Skip to content

TimeSeriesEconPy

A time-series language for macroeconomics, ported from TimeSeriesEcon.jl (Bank of Canada).

The primary motivation is environments where Julia isn't available (MS Fabric, Databricks). The port keeps the same vocabulary — Frequency, MIT, TSeries, MVTSeries, Workspace — so models translate idiom-for-idiom.

Install

pip install TimeSeriesEconPy            # core
pip install 'TimeSeriesEconPy[all]'     # core + matplotlib + plotly + pandas + polars

Python 3.11 or newer. The base install ships compiled Cython kernels via per-platform wheels (Linux x86_64 / Windows AMD64 / macOS arm64); the pure-Python fallback works in any environment but the four kernel-backed paths (rec_linear / lookup / mean·std·cor / fconvert_*_aggregate) run faster with the wheel.

First TSeries

import numpy as np

import tsecon
from tsecon import qq, TSeries

t = TSeries(qq(2020, 1), np.array([100.0, 101.2, 102.3, 103.5]))
print(t)
print("mean:", tsecon.mean(t))
print("first date:", t.firstdate)
4-element TSeries{Quarterly} with range 2020Q1:2020Q4:
  2020Q1 : 100.0
  2020Q2 : 101.2
  2020Q3 : 102.3
  2020Q4 : 103.5
mean: 101.75
first date: 2020Q1

What's inside

  • Tutorials — narrative ports of the upstream Julia tutorial corpus.
  • Reference — auto-generated API documentation.
  • Design notes — the deviations from the Julia upstream that aren't obvious from reading the code, including the Cython strategy and the N=4 operation-shape classification that's the central empirical contribution of the JSS paper.
  • API index — flat listing of every public symbol.