econometricsmodels
What is econometricsmodels?
econometricsmodels is a Python package of econometric estimators built for embedding in scripts, pipelines, and apps. It rejects invalid input rather than silently dropping or repairing it, and returns result objects that are easy to work with directly and can also be exported as JSON-ready data. Every estimator is numerically checked against established reference implementations such as statsmodels, linearmodels, and R, and the comparisons are published.
Key Design Principles
- Consistent API — Every model follows the same conventions: a polars
DataFrame, column names as strings, and an options object in; a
.fit()call out, returning a result with the same accessors. Methods with extra inputs (instruments for IV, an entity column for panel models) add arguments, but moving from OLS to Logit, IV, or panel models doesn't mean learning a new interface design. - Programmatic specification and results — Models are defined with
explicit arguments and an options object, not a formula string. Results
come back as Python objects (
.params,.std_errors,.p_values,.conf_int), not formatted text, so they are easy to build, inspect, and feed into other code. Parameter tables (params_table()) are plain lists of dicts that can be passed straight to polars orjson.dumps. - Explicit validation — Invalid input is rejected rather than silently dropped or repaired. Missing values, perfectly collinear columns, degenerate groups, and options that would have no effect raise an error instead of being quietly handled, and the error message states the cause (for example "perfect multicollinearity detected") rather than a bare "singular matrix" (see Validation and errors).
- Modern dataframe workflow — Built for polars, with data passed to the Rust core through Arrow, avoiding unnecessary conversions and copies.
- Verified against established packages — statsmodels, linearmodels, and the R ecosystem are mature yardsticks, and building after them means every estimator can be tested against them from the start. Each estimator is compared against at least one reference implementation, the comparisons run in CI on every pull request, and differences in conventions (such as small-sample corrections) are documented (see Numerical verification).
- Performance as a design goal — Strict validation should not come at the cost of speed. The Rust core is designed to be competitive in speed and memory with the packages it is verified against, and representative cases of each implemented method are benchmarked (against those packages wherever a comparable implementation exists), with results published as measured, including cases where it is not faster (see Performance).
Is this for you?
Good fit:
- Calling estimation methods from scripts, pipelines, or apps — the API is built for programmatic construction, not interactive formula-writing.
- Wanting invalid input to fail loudly instead of being silently dropped or repaired — missing values, perfectly collinear columns, and unusable options raise an error that says why (see Validation and errors).
- Needing to confirm that results match statsmodels, R, or linearmodels — for example when migrating an existing analysis, or when you have to show how your numbers were checked (see Numerical verification).
- Projects that use more than one method over time — the same interface covers linear, discrete-choice, IV, and panel models today, with more on the way (see Implemented models).
- Already working in polars, where handing data to the Rust core through Arrow avoids unnecessary conversion overhead.
Probably not a good fit:
- You prefer R-style formula syntax (
y ~ x1 + x2). - You need the broader diagnostics and edge-case coverage of long-established tools like statsmodels and the R ecosystem.
Installation
pip install econometricsmodels
Requires Python 3.12 or later and polars 1.38.1 or later (there is no upper
limit, so an installed polars is never downgraded). The test suite runs in CI
against the oldest supported polars (1.38.1) and the newest one pinned in the
lockfile; older versions are not supported, because some of them read
Enum columns as different values or cannot read Float16 columns. The
computational core is pure Rust (no system BLAS/LAPACK dependency), with
prebuilt wheels for Linux, macOS, and Windows.
Quickstart
import random
import polars as pl
from econometricsmodels import OLS, Logit, Probit
# Simulated data with a binary outcome.
random.seed(0)
n = 500
x1 = [random.gauss(0, 1) for _ in range(n)]
x2 = [random.gauss(0, 1) for _ in range(n)]
y = [int(0.3 + a - 0.8 * b + random.gauss(0, 1) > 0) for a, b in zip(x1, x2)]
df = pl.DataFrame({"y": y, "x1": x1, "x2": x2})
# The same call shape for every model. Since y is binary, OLS here is a
# linear probability model.
for name, model in [("OLS", OLS), ("Logit", Logit), ("Probit", Probit)]:
result = model(df, y="y", x=["x1", "x2"]).fit()
print(name)
print(result.params)
print(result.std_errors)
Estimation options are passed as an options object. For example, cluster-robust standard errors:
from econometricsmodels import OLS, OLSOptions
df_grouped = df.with_columns((pl.int_range(pl.len()) % 50).alias("group"))
options = OLSOptions(cov_type="cluster", cluster="group")
clustered = OLS(df_grouped, y="y", x=["x1", "x2"], options=options).fit()
print(clustered.std_errors)
Programmatic Results & Reporting
Results expose their values as ordinary Python data structures, including
dictionaries for parameter values and row-oriented data from
params_table(). The output below is for the last model in the Quickstart
(Probit), rounded:
result.params
# {"const": 0.32, "x1": 1.04, "x2": -0.87}
result.params_table()
# [
# {"param_name": "const", "param": 0.32, "std_error": 0.07,
# "test_stat": 4.46, "p_value": 8e-06,
# "conf_lower": 0.18, "conf_upper": 0.46},
# {"param_name": "x1", "param": 1.04, "std_error": 0.09, ...},
# {"param_name": "x2", "param": -0.87, "std_error": 0.09, ...},
# ]
Each key of a row is the singular of the matching result attribute
(param_name / param_names, param / params, std_error / std_errors,
test_stat / test_stats, p_value / p_values; conf_lower and conf_upper
are the two ends of conf_int). The rows of marginal_effects() use the same keys,
with effect in place of param.
There is no formatted text to parse. params_table() is shaped so it can
be passed directly into a Polars DataFrame, a JSON API response, or an
automated reporting workflow:
import json
import polars as pl
pl.DataFrame(result.params_table())
json.dumps(result.params_table())
Input Validation
Invalid input is rejected instead of being silently dropped or repaired.
A ValidationError means the input or an option cannot be used as given;
a ComputationError means the inputs are acceptable on their face but the
numerical computation fails. Two examples, using the df from the
Quickstart:
Missing values are never dropped. A null, NaN, or infinite value in any column the model uses raises an error, so the number of observations never changes without you choosing it.
df_missing = df.with_columns(
pl.when(pl.int_range(pl.len()) == 3)
.then(None)
.otherwise(pl.col("x1"))
.alias("x1")
)
OLS(df_missing, y="y", x=["x1", "x2"]).fit()
# ValidationError: Column 'x1' (given as x) in data contains 1 missing value(s)
# (null), and missing values are never dropped automatically. Drop or impute
# the missing values first, for example with drop_nulls().
Perfectly collinear columns are never removed. A perfectly collinear design raises an error that names the cause, instead of being estimated on a reduced set of regressors or failing with a bare "singular matrix". A design that is only numerically near-singular (for example, regressors on extremely different scales) raises a separate error that says so.
df_collinear = df.with_columns((pl.col("x1") * 2).alias("x1_double"))
OLS(df_collinear, y="y", x=["x1", "x1_double"]).fit()
# ComputationError: design matrix is singular (perfect multicollinearity
# detected)
Options are checked in the same spirit: for example, passing cluster
while cov_type is not "cluster" raises an error instead of being
ignored. The exception class is the stable interface; the message text may
change between versions. See
Validation and errors
for what raises which error and what is deliberately not checked, and
Accepted data
for the accepted input and column types.
Implemented Models
Currently implemented:
- OLS, WLS
- Logit, Probit, Tobit
- IV (2SLS, GMM)
- FE (fixed effects), RE (random effects)
More methods are planned, including further discrete-choice models and causal inference designs. What is planned or in progress, and in what order, is tracked in GitHub Issues.
See the documentation for usage details on each method.
Numerical Verification
Every estimator is compared numerically against established reference implementations before it is considered done. For each method, a primary reference whose statistical conventions match is chosen, and where one exists an independent implementation (mostly R) is used as a cross-check. The comparison covers the main reported statistics — coefficients, standard errors, test statistics, p-values, confidence intervals, fit statistics, and model tests — for each supported covariance type.
| Method | Primary reference | Independent cross-check | Relative tolerance (primary / cross-check) |
|---|---|---|---|
| OLS | statsmodels OLS |
R lm + sandwich/lmtest |
1e-8 / 1e-8 (HAC: 1e-2) |
| WLS | statsmodels WLS |
R lm(weights=) + sandwich/lmtest |
1e-8 / 1e-8 (HAC: 5e-2) |
| Logit | statsmodels Logit |
R glm + sandwich, marginaleffects |
1e-8 / 1e-6 |
| Probit | statsmodels Probit |
R glm + sandwich, marginaleffects |
1e-8 / 1e-6 |
| Tobit2 | R AER::tobit |
R censReg |
1e-8 / 1e-8 |
| IV (2SLS) | linearmodels IV2SLS |
R ivreg + sandwich/lmtest |
1e-8 / 1e-8 (HAC: 1e-2) |
| IV (GMM) | linearmodels IVGMM |
R momentfit |
1e-8 / 1e-8 |
| FE1 | linearmodels PanelOLS, R fixest |
R fixest, R plm |
1e-8 / 1e-8 |
| RE1 | linearmodels RandomEffects, R plm |
R plm, statsmodels OLS |
1e-8 / 1e-8 (unbalanced panels: 5e-3 to 5e-2) |
1 For FE and RE, linearmodels covers only classical and HC1
standard errors. Its cluster and Driscoll–Kraay standard errors use
different small-sample corrections, so R (fixest, plm) is the primary
reference for those. Which implementation checks which statistic is
detailed on the verification page.
2 There is no Python Tobit implementation, so both references are
R packages. They are different implementations (survreg and maxLik
based), so the second one is a genuine cross-check, but there is no
reference from outside R. Where no Python implementation exists, two
different R packages are used.
- Tolerance. The target relative tolerance against the primary reference is 1e-8 (with a tiny absolute floor for values near zero); for closed-form estimators the measured agreement is about 1e-14. Where implementations legitimately differ, looser documented values are used instead: the figures in parentheses and the Logit/Probit cross-check, as well as some solver options and real-data cases listed on the verification page. Typical reasons are HAC small-sample conventions, both sides being iterative optimizers, or plm and linearmodels estimating the Swamy–Arora variance components slightly differently on unbalanced panels. The full list of tolerances and the reasons are on the verification page.
- Single-reference cases. Some statistics have only one reference. For
example, IV (2SLS) with HC2/HC3 standard errors is checked against
ivregonly, because linearmodels has no equivalent. These cases are listed on the verification page. - Reproducible and continuous. Reference values are generated once from pinned package versions and stored in the repository, and the comparisons run in CI on every pull request on Python 3.12, 3.13 and 3.14. The Rust engine also has its own unit and property-based tests.
For the statistics compared, the test data, tolerances, and the cases without a second reference, see the verification page. Test distributions and degrees of freedom for each method are in the inference conventions guide.
Performance
The computational core is written in Rust. Speed and memory are measured for each implemented method over sample size and number of regressors with the default standard error, and over every standard-error type it supports at one sample size, not for every option combination.
Single-threaded. The core currently runs its linear algebra on a single thread, and the reference packages were pinned to one thread as well, so the comparison measures the efficiency of the computation itself. Speed on many cores, for example for very wide models, is not covered by these numbers.
Time for one fit() call at 1,000,000 observations, with 5 regressors and
classical standard errors:
| Method | fit() time |
|---|---|
| OLS | 0.058 s |
| WLS | 0.11 s |
| Logit | 0.49 s |
| Probit | 1.5 s |
| Tobit | 2.2 s |
| IV (2SLS) | 0.48 s |
| FE | 0.30 s |
| RE | 0.31 s |
Execution time and memory are compared against statsmodels and linearmodels wherever a comparable Python implementation exists. Some examples at the same sample size (reference time divided by ours):
- OLS: about 2.5x faster than statsmodels.
- IV (2SLS): about 26x faster than linearmodels.
- FE: about 13x faster than linearmodels.
- Logit: about on par with statsmodels (1.0x) at 1,000,000 observations, and slightly slower (0.85x to 0.91x) at 100,000 observations for every standard-error type, including clustered ones.
- Tobit has no Python implementation to compare against, so only its own time is shown.
Peak memory is lower in the largest cases measured too: IV (2SLS) peaks at about 1.1 GB against about 4.0 GB for linearmodels, and OLS at about 0.32 GB against about 0.57 GB for statsmodels (whole-process peak, including the Python interpreter).
Times are end-to-end measurements from CI on shared runners, so absolute values vary from run to run; the comparison between two packages within a run is the meaningful part. See the performance page for the current numbers, measurement conditions, and known limitations, and the full results per method.
Limitations / Disclaimer
This is a personal, pre-1.0 project maintained by one person. It has not yet undergone the years of community scrutiny and extensive edge-case testing that established tools such as statsmodels and the R ecosystem have. See Numerical verification for how estimates are checked. For published research or other important analyses, we recommend cross-checking results against a trusted, established package.
Before 1.0, breaking changes may be introduced in minor version releases, not just major ones.
Documentation / Links
- Documentation — usage guides and full API reference
- PyPI
- GitHub Issues — bug reports, feature requests, roadmap status
- Contributing — how to report bugs and propose methods (issues welcome; pull requests cannot be reviewed)
- Changelog
- License — MIT
Metadata
Release files for econometricsmodels 0.9.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 | |
|---|---|---|---|---|
| econometricsmodels-0.9.0.tar.gz | 913.2 kB | With provenance | Details |
Built distributions (wheels)
Total release size: 172.5 MB
Release files / econometricsmodels-0.9.0.tar.gz
| Download URL | econometricsmodels-0.9.0.tar.gz |
|---|---|
| Size | 913.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
ea668e3cb320092435aeecc034b2d9f50174aca681f014651b3f82d6150ebc03
|
|
BLAKE2b-256 checksum How to use checksums |
57cc4d3a56cecfb877dbea18ce8612e9a61c07198274aff60ee32f2ff65c6dd4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-win_amd64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 7.7 MB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
301d9c5336f8f60e84d0a0caed5bb9f9a85325fca24ae10e1ce0fd347658445b
|
|
BLAKE2b-256 checksum How to use checksums |
a93e84c4362b525c04ebfc6006c033f04503524c569e3f14201579d0c41ceec2
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 9.5 MB |
| Tags | CPython 3.14 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
23150c8ade10957e157f30e405d0913b6a7e040d0b0a5aacf3669f27e2830ee6
|
|
BLAKE2b-256 checksum How to use checksums |
c7a6446459f3e7991963f1314652629e182bd157ea85508a33e59395ae81b3e5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-musllinux_1_2_aarch64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 8.6 MB |
| Tags | CPython 3.14 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
94974f652bdecd5900030550a6a11ce7a9c7b3c499ff2e67ede5f29516da59da
|
|
BLAKE2b-256 checksum How to use checksums |
b6444e46f03fbbef5a700290fd2681389d84999cecf6420c15299e018de4c6e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 8.3 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
c813c27514ae3fff35d650b9328622599c332ac964657e38f621c6acc2f195ba
|
|
BLAKE2b-256 checksum How to use checksums |
401adf6965d54cf6f47c11faeb0ff81568aad8d4e0bec8e96e85a9bffbd09756
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 8.5 MB |
| Tags | CPython 3.14 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
ade9a5cbcdf3c8ed4373bd9069e1578e4b5858ff42e99eebfe7c37f5c40cff1c
|
|
BLAKE2b-256 checksum How to use checksums |
711d96094816a2358441762543a5e8e087df5737236560d73aa2e22996e86e2b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 6.9 MB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
48528d718a2b9dbe80af5dc898799e44ce97c0a94de18a1e28ff8eda4efafec6
|
|
BLAKE2b-256 checksum How to use checksums |
824f139040799c33f692432d48a928c34e564206897496a81a5335efa33e51c8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp314-cp314-macosx_10_12_x86_64.whl |
|---|---|
| Size | 7.7 MB |
| Tags | CPython 3.14 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
856426c48d9281b7eb514a2220327faddd629d1fde955c3f3ee804c3c0c71964
|
|
BLAKE2b-256 checksum How to use checksums |
0f8cb660bf675b9fc10bf581073c878556f217a184545e6a9f9c8abc16c738fc
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-win_amd64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 7.7 MB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
ec3eefb1fd6f8d610d18a834147d405824a53796c2445351f201d03b4e9e26a5
|
|
BLAKE2b-256 checksum How to use checksums |
cdbae456c6f9b1e31d6a9dc79f54cdc684f6886ee47f594f57834d71c2ef32c9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 9.5 MB |
| Tags | CPython 3.13 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
e24eaceddb38fb3b14e8b4c1dd2c25c2e47973e711478fdde82d14fdf2ca8246
|
|
BLAKE2b-256 checksum How to use checksums |
1b93dec6d66856c78f4ff5c5e325c3ba776b2c73144519f82b99188c9f98d341
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-musllinux_1_2_aarch64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 8.6 MB |
| Tags | CPython 3.13 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
2d5941dc79c6acff04d24bd689a19ff66fb2f86a71f199d0a4be4141025d92dc
|
|
BLAKE2b-256 checksum How to use checksums |
d2153dc0c98ea54179f80c7796c65460db05ddbabd8e1e6be42684380cfcf9ad
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 8.3 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
8f9a0b23c2711c1df8289fa73472dfba7be3162d72f02af7a50a89919fd1187c
|
|
BLAKE2b-256 checksum How to use checksums |
0b1760f1006e46c68c92d16283bc5d2fc7d13b3259c5b43e9b378474478d99e0
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 8.5 MB |
| Tags | CPython 3.13 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
e7f9301c2a530ac7d7f248db8bd8a6e82b38d2567e1bbf61cde32e5529324946
|
|
BLAKE2b-256 checksum How to use checksums |
46d8725fde8db097a76b856ada43debaa4fb7a9e970a7b9e04888d08a9b1b352
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 6.9 MB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
ab4b4b3fd09465ad47bdef98a902c20d57687bfbcfce1b1d9007e0beacaa59b0
|
|
BLAKE2b-256 checksum How to use checksums |
3913479b86c400f8edfbd76ca9118660bb9d69da9dac9482abecf79d34447557
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp313-cp313-macosx_10_12_x86_64.whl |
|---|---|
| Size | 7.7 MB |
| Tags | CPython 3.13 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
7e7644e967d7c0ecd658721640cc013330202fce2b73e779292d6629e0413506
|
|
BLAKE2b-256 checksum How to use checksums |
e6c2503f4dadfe2511cc0ebecafdcd5cebb8a6635dbf97c5d51a611b99d154db
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-win_amd64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 7.7 MB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
5c478987ee70828a8c4153226e6ae7b3fd6928d0186e194fd773b0fef815e756
|
|
BLAKE2b-256 checksum How to use checksums |
86461bc8e5288eae0a38c43e446c1deafa9ee9bc548fa3b53d56f0534e24349c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-musllinux_1_2_x86_64.whl |
|---|---|
| Size | 9.5 MB |
| Tags | CPython 3.12 Linux musl 1.2+ x86-64 |
|
SHA-256 checksum How to use checksums |
31b30985847ddcb94d51025cca1d84233f5bc73076c22232085d3f5be55265c4
|
|
BLAKE2b-256 checksum How to use checksums |
53acf75cb776610320327a5792ffbec221a68789669040199dc292a3a9922fb1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-musllinux_1_2_aarch64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-musllinux_1_2_aarch64.whl |
|---|---|
| Size | 8.6 MB |
| Tags | CPython 3.12 Linux musl 1.2+ ARM64 |
|
SHA-256 checksum How to use checksums |
616680a4ec8fa4eef12777c0e7caac9238abb5755963be89dc3d14909c2834af
|
|
BLAKE2b-256 checksum How to use checksums |
ca06ad7a7a6d6441901bf156fe7c5f722d48fab3984c2f03321725ed48ae0847
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl |
|---|---|
| Size | 8.3 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ x86-64 |
|
SHA-256 checksum How to use checksums |
5fc8054d98a27d931a3dc56e12840540a47f22e3794c66b40a58d8ae6eab0f29
|
|
BLAKE2b-256 checksum How to use checksums |
776b4577189b317c06f3eae10f9fd3cb45bbe644813c3de0b996892388828254
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl |
|---|---|
| Size | 8.5 MB |
| Tags | CPython 3.12 Linux glibc 2.17+ ARM64 |
|
SHA-256 checksum How to use checksums |
39e5a2315c148ac1fa934cb60f056696a37c0eadccd84ce2ca4b16e97e9a0525
|
|
BLAKE2b-256 checksum How to use checksums |
ad10660e28a5d5e7e867a7d847c184188870e454bdaae72624a474492d5323f7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 6.9 MB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
77016e5a4bb85d3496d94df1be4805d9d43426397137b5313827d0eb1bb8b386
|
|
BLAKE2b-256 checksum How to use checksums |
7ffe21f0c75101d7b66da8c1ee787c445a69d9f5497bd92924166ef1dd162f3a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logRelease files / econometricsmodels-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl
| Download URL | econometricsmodels-0.9.0-cp312-cp312-macosx_10_12_x86_64.whl |
|---|---|
| Size | 7.7 MB |
| Tags | CPython 3.12 macOS 10.12+ x86-64 |
|
SHA-256 checksum How to use checksums |
df4c26975e774464373c34deb1bbd5763d79a9ccea9f5266e9f845aa2f62184b
|
|
BLAKE2b-256 checksum How to use checksums |
8cc95e0983af7d9cead6566a7c50431365ed8caee053cf59aec493d963aeb695
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.16
|
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.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logSecurity for econometricsmodels 0.9.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.
Full provenance
All 22 files in this release have been uploaded with provenance metadata.
Attestation for econometricsmodels-0.9.0.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 25, 2026.
Transparency logA 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.
To learn more about protecting yourself from malicious actors, visit our package security documentation.