Using Python from Analytica

Revision as of 17:34, 19 August 2025 by Lchrisman (talk | contribs)

New in Analytica 7.0

Requires the Analytica Developer edition.

Introduction

  • Short overview
  • Motivation (i.e., rich ecosystem, many libraries)
  • Use cases
  • Advantages of using python from within Analytica vs. plain python.
  • Downsides: When it is better to stick with Analytica syntax (dependencies, array abstraction, MC, optimization).

Setting up a Python environment

  • Very brief basics.
    • conda create -n MyEnv python=3.11
    • Configuring Python Environment or Model Environment sysvars in Analytica.
  • Link to Setting up a Python environment for detailed info.

Importing Python modules and objects

  • The Python Startup Code sysvar
  • Use of "From module Import object"

The Python namespace and python objects

  • The py:: namespace prefix
  • The arrow -> operator

Calling a Python function

  • py::F(...) calling syntax

Using Python code in Definitions

  • The Python Expression view for definitions
  • Writing an Analytica UDF with python code in body
  • Using "def" or "class" in python code.
  • The Callable

Dependencies

  • The convenience of Analytica's dependencies.
  • Drawing arrows to indicate dependence where Python doesn't track it.
  • When dependencies are not tracked

Non-scalar data structures

  • Distinction between Python data structures and Analytica data structures. How Python objects display in «...»
  • Why to sometimes keep as python data structure w/o exploding

= Converting from Python data to Analytica

  • Automatic conversions (including list of types)
  • PyExplode
    • Basic usage. Nested usage.
    • Include/exclude types
    • Collections: np.array, dict, set/map, pandas data frame (documented on a separate library page), etc.

Converting from Analytica to Python data structures

Using Analytica locals from Python code

Accessing Analytica objects from Python code

Comments


You are not allowed to post comments.