PyTimeVar: A Python Package for Trending Time-Varying Time Series Models
Authors: Mingxuan Song (m3.song@student.vu.nl, Vrije Universiteit Amsterdam), Bernhard van der Sluis (vandersluis@ese.eur.nl, Erasmus Universiteit Rotterdam), and Yicong Lin (yc.lin@vu.nl, Vrije Universiteit Amsterdam & Tinbergen Institute)
Discussion paper titled "PyTimeVar: A Python Package for Trending Time-Varying Time Series Models" is available at https://tinbergen.nl/discussion-paper/6365/24-060-iii-pytimevar-a-python-package-for-trending-time-varying-time-series-models.
Purpose of the package
The PyTimeVar package offers state-of-the-art estimation and statistical inference methods for time series regression models with flexible trends and/or time-varying coefficients. The package implements nonparametric estimation along with multiple recently proposed bootstrap-assisted inference methods. Pointwise confidence intervals and simultaneous bands of parameter curves via bootstrap can be easily obtained using user-friendly commands. The package also includes four commonly used methods for modeling trends and time-varying relationships: boosted Hodrick-Prescot filter, power-law trend models, state-space models, and score-driven models. This allows users to compare different approaches within a unified environment.
The package is built upon several papers and books. We list the key references below.
Local linear kernel estimation and bootstrap inference
Friedrich and Lin (2024) (doi: https://doi.org/10.1016/j.jeconom.2022.09.004); Lin et al. (2025) (doi: https://doi.org/10.1080/10618600.2024.2403705); Friedrich et al. (2020) (doi: https://doi.org/10.1016/j.jeconom.2019.05.006); Smeekes and Urbain (2014) (doi: https://doi.org/10.26481/umagsb.2014008) Zhou and Wu (2010) (doi: https://doi.org/10.1111/j.1467-9868.2010.00743.x); Buhlmann (1998) (doi: https://doi.org/10.1214/aos/1030563978);
Boosted HP filter
Mei et al. (2024) (doi: https://doi.org/10.1002/jae.3086); Biswas et al. (2024) (doi: https://doi.org/10.1080/07474938.2024.2380704); Phillips and Shi (2021) (doi: https://doi.org/10.1111/iere.12495);
Power-law trend models
Lin and Reuvers (2025) (doi: https://doi.org/10.1111/jtsa.12805); Robinson (2012) (doi: https://doi.org/10.3150/10-BEJ349);
State-space models
Durbin and Koopman (2012) (doi: https://doi.org/10.1093/acprof:oso/9780199641178.001.0001);
Score-driven models
Creal et al. (2013) (doi: https://doi.org/10.1002/jae.1279); Harvey (2013) (doi: https://doi.org/10.1017/CBO9781139540933); Harvey and Luati (2014) (doi: https://doi.org/10.1080/01621459.2014.887011) Blasques et al. (2016) (doi: https://doi.org/10.1016/j.ijforecast.2015.11.018);
Features
- Nonparametric estimation of time-varying time series models, along with various bootstrap-assisted methods for inference, including local blockwise wild bootstrap, wild bootstrap, sieve bootstrap, sieve wild bootstrap, autoregressive wild bootstrap.
- Alternative estimation methods for modeling trend and time-varying relationships, including boosted HP filter, power-law trend models, state-space, and score-driven models. The package includes inference methods for power-law trend models, state-space models, and score-driven models.
- Unified framework for comparison of methods.
- Multiple datasets for illustration.
Getting started
The PyTimeVar can implemented as a PyPI package. To download the package in your Python environment, use the following command:
pip install PyTimeVar
Support
The documentation of the package can be found at the GitHub repository https://github.com/bpvand/PyTimeVar, and ReadTheDocs https://pytimevar.readthedocs.io/en/latest/.
For any questions or feedback regarding the PyTimeVar package, please feel free to contact the authors via email: m3.song@student.vu.nl; vandersluis@ese.eur.nl; yc.lin@vu.nl.
Metadata
Release files for PyTimeVar 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| pytimevar-1.1.0.tar.gz | 237.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pytimevar-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 477.2 kB
Release files / pytimevar-1.1.0.tar.gz
| Download URL | pytimevar-1.1.0.tar.gz |
|---|---|
| Size | 237.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
feed4464845da5b820f940b45e3cfcc2e6817e6c993b89c5193c1ea55412f9cd
|
|
BLAKE2b-256 checksum How to use checksums |
5c63868f75ba8156a93089a7d28f78262dfc12c1a0f4878512ac103e46fc043e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.19
|
Release files / pytimevar-1.1.0-py3-none-any.whl
| Download URL | pytimevar-1.1.0-py3-none-any.whl |
|---|---|
| Size | 240.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e3632f3c62e02c1c6952e44d8a3730b515078058c7a94a845cee6e2d2cb1c1b2
|
|
BLAKE2b-256 checksum How to use checksums |
3c7c461a4bd92430639f751d9db7f356ac4a87038ad0f08832b4d14791bf118b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.9.19
|
Security for PyTimeVar 1.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.