Skill Tracer
Skills › Scientific Agent Skills › statsmodels

statsmodels

skill · 256 lines · BSD-3-Clause license · skills/statsmodels/SKILL.md

The facts

Its description

Fits and diagnoses Python statistical models including OLS, GLM, discrete and mixed models, ARIMA and SARIMAX. Supports coefficient inference, marginal effects, model comparison and time series forecasting with explicit design and uncertainty checks. Used for econometrics and statistical modeling; for guided test selection with APA reporting, see statistical-analysis.

The description the agent reads to decide when to use it.

From its settingsline 3

Tools it may use, or may not

allowed-tools: Read Write Edit Bash

Tools it may use while it runs without asking you first.

From its settingsline 4

Files it mentions

references/review.md, references/quick_start_guide.md, references/modeling_capabilities.md, references/model_selection.md, references/linear_models.md (first 5 of 9 lines)

Files the text names, such as ones to read or write. Found by matching words, so treat them as pointers.

Found by matching wordsline 29 line 47 line 49 line 51 line 53

Licence

BSD-3-Clause license, from the skill file

The terms its author shares it under, which let it be shown here.

From its settingsline 6 licence text

Other settings

compatibility: Requires Python 3.10+ and statsmodels 0.15.0; the tested NumPy 2.5.3/SciPy 1.18.1 stack needs Python 3.12+. Plotting needs matplotlib; predictive metrics need scikit-learn. Network access is needed only for installation or documentation; no credentials. metadata: version: "1.5" last-reviewed: "2026-10-01" skill-author: K-Dense Inc.

More settings at the top of the file, shown as written.

From its settingsline 5 line 7
Other files in this skill (9) Close

The text

Open on GitHub

Most marks come from matching words in the file, so treat them as pointers.

1---
2name: statsmodels
3description: Fits and diagnoses Python statistical models including OLS, GLM, discrete and mixed models, ARIMA and SARIMAX. Supports coefficient inference, marginal effects, model comparison and time series forecasting with explicit design and uncertainty checks. Used for econometrics and statistical modeling; for guided test selection with APA reporting, see statistical-analysis.
4allowed-tools: Read Write Edit Bash
5compatibility: Requires Python 3.10+ and statsmodels 0.15.0; the tested NumPy 2.5.3/SciPy 1.18.1 stack needs Python 3.12+. Plotting needs matplotlib; predictive metrics need scikit-learn. Network access is needed only for installation or documentation; no credentials.
6license: BSD-3-Clause license
7metadata:
8 version: "1.5"
9 last-reviewed: "2026-10-01"
10 skill-author: K-Dense Inc.
11---
13# Statsmodels: Statistical Modeling and Econometrics

Statsmodels: Statistical Modeling and Econometrics

Raw lines 1 to 14
15## Overview
17Statsmodels provides estimation, inference and diagnostics for regression, time series and econometric models. A successful fit establishes numerical execution; causal identification, calibrated uncertainty and model adequacy require a defensible study design and assumptions.

Overview

Statsmodels provides estimation, inference and diagnostics for regression, time series and econometric models. A successful fit establishes numerical execution; causal identification, calibrated uncertainty and model adequacy require a defensible study design and assumptions.

Raw lines 15 to 18
19## Current Compatibility
21Reviewed against statsmodels 0.15.0 (released August 27, 2026). Native checks used Python 3.13, NumPy 2.5.3, SciPy 1.18.1, pandas 3.0.6, matplotlib 3.11.2 and scikit-learn 1.9.1. Install in a dedicated environment:
23```bash
24uv pip install statsmodels==0.15.0 numpy==2.5.3 scipy==1.18.1 pandas==3.0.6 matplotlib==3.11.2 scikit-learn==1.9.1
25```
27Use `statsmodels.api` and `statsmodels.formula.api` for stable high-level imports, and direct module imports when examples require newer or specialized classes such as `HurdleCountModel`.
29The [review and source ledger](references/review.md) records API coverage and verification limits. The quick start is executable; topic references are contextual fragments requiring the named data and a matching model result. In 0.15, use `result_object=True` and named fields for ADF/KPSS and other transitioning tests; prefer `rng=` where statsmodels formerly accepted `seed` or `random_state`.

Current Compatibility

Reviewed against statsmodels 0.15.0 (released August 27, 2026). Native checks used Python 3.13, NumPy 2.5.3, SciPy 1.18.1, pandas 3.0.6, matplotlib 3.11.2 and scikit-learn 1.9.1. Install in a dedicated environment:

uv pip install statsmodels==0.15.0 numpy==2.5.3 scipy==1.18.1 pandas==3.0.6 matplotlib==3.11.2 scikit-learn==1.9.1

Use statsmodels.api and statsmodels.formula.api for stable high-level imports, and direct module imports when examples require newer or specialized classes such as HurdleCountModel.

The review and source ledger records API coverage and verification limits. The quick start is executable; topic references are contextual fragments requiring the named data and a matching model result. In 0.15, use result_object=True and named fields for ADF/KPSS and other transitioning tests; prefer rng= where statsmodels formerly accepted seed or random_state.

Raw lines 19 to 30
Reads a file references/review.md :29
31## When to Use This Skill
33This skill should be used when:
34- Fitting regression models (OLS, WLS, GLS, quantile regression)
35- Performing generalized linear modeling (logistic, Poisson, Gamma, etc.)
36- Analyzing discrete outcomes (binary, multinomial, count, ordinal)
37- Conducting time series analysis (ARIMA, SARIMAX, VAR, forecasting)
38- Running statistical tests and diagnostics
39- Testing model assumptions (heteroskedasticity, autocorrelation, normality)
40- Detecting outliers and influential observations
41- Comparing models (AIC/BIC, likelihood ratio tests)
42- Estimating causal effects
43- Producing publication-ready statistical tables and inference

When to Use This Skill

This skill should be used when:

  • Fitting regression models (OLS, WLS, GLS, quantile regression)
  • Performing generalized linear modeling (logistic, Poisson, Gamma, etc.)
  • Analyzing discrete outcomes (binary, multinomial, count, ordinal)
  • Conducting time series analysis (ARIMA, SARIMAX, VAR, forecasting)
  • Running statistical tests and diagnostics
  • Testing model assumptions (heteroskedasticity, autocorrelation, normality)
  • Detecting outliers and influential observations
  • Comparing models (AIC/BIC, likelihood ratio tests)
  • Estimating causal effects
  • Producing publication-ready statistical tables and inference
Raw lines 31 to 44
45## Quick Start, Capabilities, and Model Selection
47- [references/quick_start_guide.md](references/quick_start_guide.md): minimal worked
48 examples for OLS, logistic regression, ARIMA, and GLM, and how to read the summary.
49- [references/modeling_capabilities.md](references/modeling_capabilities.md): linear
50 models, GLMs, discrete choice, time series, and the statistical tests and diagnostics.
51- [references/model_selection.md](references/model_selection.md): the R-style formula API
52 and model comparison.
53- Per-topic detail: [references/linear_models.md](references/linear_models.md),
54 [references/glm.md](references/glm.md),
55 [references/discrete_choice.md](references/discrete_choice.md),
56 [references/time_series.md](references/time_series.md), and
57 [references/stats_diagnostics.md](references/stats_diagnostics.md).
59statsmodels supports inference and prediction, including forecasting. Match validation to the sampling design: grouped splits for repeated units, chronological splits for time series, and preprocessing learned on training data only.

Quick Start, Capabilities, and Model Selection

  • references/quick_start_guide.md: minimal worked examples for OLS, logistic regression, ARIMA, and GLM, and how to read the summary.
  • references/modeling_capabilities.md: linear models, GLMs, discrete choice, time series, and the statistical tests and diagnostics.
  • references/model_selection.md: the R-style formula API and model comparison.
  • Per-topic detail: references/linear_models.md, references/glm.md, references/discrete_choice.md, references/time_series.md, and references/stats_diagnostics.md.

statsmodels supports inference and prediction, including forecasting. Match validation to the sampling design: grouped splits for repeated units, chronological splits for time series, and preprocessing learned on training data only.

Raw lines 45 to 60
61## Best Practices

Best Practices

Raw lines 61 to 62
63### Data Preparation
651. **Specify the intercept**: Array OLS/GLM/Logit need an explicit constant; formula models include one by default. OrderedModel and ConditionalLogit must not receive a constant.
662. **Check for missing values**: For array-based models, use `missing="raise"` during construction to catch unexpected NaNs; the default `missing="none"` does not check and can yield all-NaN estimates. If dropping rows is justified, record retained row IDs and compare models on the same observations. Fit any imputation on training data only.
673. **Scale if needed**: Can improve conditioning and convergence; record units and estimate scaling on training data
684. **Encode categoricals**: Use formula API or manual dummy coding

Data Preparation

  1. Specify the intercept: Array OLS/GLM/Logit need an explicit constant; formula models include one by default. OrderedModel and ConditionalLogit must not receive a constant.
  2. Check for missing values: For array-based models, use missing="raise" during construction to catch unexpected NaNs; the default missing="none" does not check and can yield all-NaN estimates. If dropping rows is justified, record retained row IDs and compare models on the same observations. Fit any imputation on training data only.
  3. Scale if needed: Can improve conditioning and convergence; record units and estimate scaling on training data
  4. Encode categoricals: Use formula API or manual dummy coding
Raw lines 63 to 69
70### Model Building
721. **Start simple**: Begin with basic model, add complexity as needed
732. **Check assumptions**: Test residuals, heteroskedasticity, autocorrelation
743. **Use appropriate model**: Match model to outcome type (binary→Logit, count→Poisson)
754. **Consider alternatives**: If assumptions violated, use robust methods or different model

Model Building

  1. Start simple: Begin with basic model, add complexity as needed
  2. Check assumptions: Test residuals, heteroskedasticity, autocorrelation
  3. Use appropriate model: Match model to outcome type (binary→Logit, count→Poisson)
  4. Consider alternatives: If assumptions violated, use robust methods or different model
Raw lines 70 to 76
77### Inference
791. **Report effect sizes**: Not just p-values
802. **Use robust SEs**: When heteroskedasticity or clustering present
813. **Multiple comparisons**: Correct when testing many hypotheses
824. **Confidence intervals**: Always report alongside point estimates

Inference

  1. Report effect sizes: Not just p-values
  2. Use robust SEs: When heteroskedasticity or clustering present
  3. Multiple comparisons: Correct when testing many hypotheses
  4. Confidence intervals: Always report alongside point estimates
Raw lines 77 to 83
84### Model Evaluation
861. **Check residuals**: Plot residuals vs fitted, Q-Q plot
872. **Influence diagnostics**: Identify and investigate influential observations
883. **Out-of-sample validation**: Test on holdout set or cross-validate
894. **Compare models**: Use AIC/BIC only for comparable likelihoods on the same response and rows; regular nested-model LR tests need interior parameters and valid likelihood assumptions

Model Evaluation

  1. Check residuals: Plot residuals vs fitted, Q-Q plot
  2. Influence diagnostics: Identify and investigate influential observations
  3. Out-of-sample validation: Test on holdout set or cross-validate
  4. Compare models: Use AIC/BIC only for comparable likelihoods on the same response and rows; regular nested-model LR tests need interior parameters and valid likelihood assumptions
Raw lines 84 to 90
91### Reporting
931. **Comprehensive summary**: Use `.summary()` for detailed output
942. **Document decisions**: Note transformations, excluded observations
953. **Interpret carefully**: Account for link functions (e.g., exp(β) for log link)
964. **Visualize**: Plot predictions, confidence intervals, diagnostics

Reporting

  1. Comprehensive summary: Use .summary() for detailed output
  2. Document decisions: Note transformations, excluded observations
  3. Interpret carefully: Account for link functions (e.g., exp(β) for log link)
  4. Visualize: Plot predictions, confidence intervals, diagnostics
Raw lines 91 to 97
98## Common Workflows

Common Workflows

Raw lines 98 to 99
100### Workflow 1: Linear Regression Analysis
1021. Explore data (plots, descriptives)
1032. Fit initial OLS model
1043. Check residual diagnostics
1054. Test for heteroskedasticity, autocorrelation
1065. Check for multicollinearity (VIF)
1076. Identify influential observations
1087. Refit with robust SEs if needed
1098. Interpret coefficients and inference
1109. Validate on holdout or via CV

Workflow 1: Linear Regression Analysis

  1. Explore data (plots, descriptives)
  2. Fit initial OLS model
  3. Check residual diagnostics
  4. Test for heteroskedasticity, autocorrelation
  5. Check for multicollinearity (VIF)
  6. Identify influential observations
  7. Refit with robust SEs if needed
  8. Interpret coefficients and inference
  9. Validate on holdout or via CV
Raw lines 100 to 111
112### Workflow 2: Binary Classification
1141. Fit logistic regression (Logit)
1152. Check for convergence issues
1163. Interpret odds ratios
1174. Calculate marginal effects
1185. Evaluate classification performance (AUC, confusion matrix)
1196. Check for influential observations
1207. Compare with alternative models (Probit)
1218. Validate predictions on test set

Workflow 2: Binary Classification

  1. Fit logistic regression (Logit)
  2. Check for convergence issues
  3. Interpret odds ratios
  4. Calculate marginal effects
  5. Evaluate classification performance (AUC, confusion matrix)
  6. Check for influential observations
  7. Compare with alternative models (Probit)
  8. Validate predictions on test set
Raw lines 112 to 122
123### Workflow 3: Count Data Analysis
1251. Fit Poisson regression
1262. Check for overdispersion
1273. If overdispersed, fit Negative Binomial
1284. Check for excess zeros (consider ZIP/ZINB)
1295. Interpret rate ratios
1306. Assess goodness of fit
1317. Compare models via AIC
1328. Validate predictions

Workflow 3: Count Data Analysis

  1. Fit Poisson regression
  2. Check for overdispersion
  3. If overdispersed, fit Negative Binomial
  4. Check for excess zeros (consider ZIP/ZINB)
  5. Interpret rate ratios
  6. Assess goodness of fit
  7. Compare models via AIC
  8. Validate predictions
Raw lines 123 to 133
134### Workflow 4: Time Series Forecasting
1361. Plot series, check for trend/seasonality
1372. Test for stationarity (ADF, KPSS)
1383. Choose deterministic terms and differencing using domain context, plots and tests; do not treat failure to reject a unit root as proof
1394. Use ACF/PACF for candidate orders, then compare converged fits on training data
1405. Fit ARIMA or SARIMAX
1416. Check residual diagnostics (Ljung-Box)
1427. Generate forecasts with model-based prediction intervals and required future exogenous inputs
1438. Evaluate forecast accuracy on test set

Workflow 4: Time Series Forecasting

  1. Plot series, check for trend/seasonality
  2. Test for stationarity (ADF, KPSS)
  3. Choose deterministic terms and differencing using domain context, plots and tests; do not treat failure to reject a unit root as proof
  4. Use ACF/PACF for candidate orders, then compare converged fits on training data
  5. Fit ARIMA or SARIMAX
  6. Check residual diagnostics (Ljung-Box)
  7. Generate forecasts with model-based prediction intervals and required future exogenous inputs
  8. Evaluate forecast accuracy on test set
Raw lines 134 to 144
145## Reference Documentation
147This skill includes comprehensive reference files for detailed guidance:

Reference Documentation

This skill includes comprehensive reference files for detailed guidance:

Raw lines 145 to 148
149### references/linear_models.md
150Detailed coverage of linear regression models including:
151- OLS, WLS, GLS, GLSAR, Quantile Regression
152- Mixed effects models
153- Recursive and rolling regression
154- Comprehensive diagnostics (heteroskedasticity, autocorrelation, multicollinearity)
155- Influence statistics and outlier detection
156- Robust standard errors (HC, HAC, cluster)
157- Hypothesis testing and model comparison

references/linear_models.md

Detailed coverage of linear regression models including:

  • OLS, WLS, GLS, GLSAR, Quantile Regression
  • Mixed effects models
  • Recursive and rolling regression
  • Comprehensive diagnostics (heteroskedasticity, autocorrelation, multicollinearity)
  • Influence statistics and outlier detection
  • Robust standard errors (HC, HAC, cluster)
  • Hypothesis testing and model comparison
Raw lines 149 to 158
159### references/glm.md
160Complete guide to generalized linear models:
161- All distribution families (Binomial, Poisson, Gamma, etc.)
162- Link functions and when to use each
163- Model fitting and interpretation
164- Pseudo R-squared and goodness of fit
165- Diagnostics and residual analysis
166- Applications (logistic, Poisson, Gamma regression)

references/glm.md

Complete guide to generalized linear models:

  • All distribution families (Binomial, Poisson, Gamma, etc.)
  • Link functions and when to use each
  • Model fitting and interpretation
  • Pseudo R-squared and goodness of fit
  • Diagnostics and residual analysis
  • Applications (logistic, Poisson, Gamma regression)
Raw lines 159 to 167
168### references/discrete_choice.md
169Comprehensive guide to discrete outcome models:
170- Binary models (Logit, Probit)
171- Multinomial models (MNLogit, Conditional Logit)
172- Count models (Poisson, Negative Binomial, Zero-Inflated, Hurdle)
173- Ordinal models
174- Marginal effects and interpretation
175- Model diagnostics and comparison

references/discrete_choice.md

Comprehensive guide to discrete outcome models:

  • Binary models (Logit, Probit)
  • Multinomial models (MNLogit, Conditional Logit)
  • Count models (Poisson, Negative Binomial, Zero-Inflated, Hurdle)
  • Ordinal models
  • Marginal effects and interpretation
  • Model diagnostics and comparison
Raw lines 168 to 176
177### references/time_series.md
178In-depth time series analysis guidance:
179- Univariate models (AR, ARIMA, SARIMAX, Exponential Smoothing)
180- Multivariate models (VAR, VARMAX, Dynamic Factor)
181- State space models
182- Stationarity testing and diagnostics
183- Forecasting methods and evaluation
184- Granger causality, IRF, FEVD

references/time_series.md

In-depth time series analysis guidance:

  • Univariate models (AR, ARIMA, SARIMAX, Exponential Smoothing)
  • Multivariate models (VAR, VARMAX, Dynamic Factor)
  • State space models
  • Stationarity testing and diagnostics
  • Forecasting methods and evaluation
  • Granger causality, IRF, FEVD
Raw lines 177 to 185
186### references/stats_diagnostics.md
187Comprehensive statistical testing and diagnostics:
188- Residual diagnostics (autocorrelation, heteroskedasticity, normality)
189- Influence and outlier detection
190- Hypothesis tests (parametric and non-parametric)
191- ANOVA and post-hoc tests
192- Multiple comparisons correction
193- Robust covariance matrices
194- Power analysis and effect sizes
196**When to reference:**
197- Need detailed parameter explanations
198- Choosing between similar models
199- Troubleshooting convergence or diagnostic issues
200- Understanding specific test statistics
201- Looking for code examples for advanced features
203**Search patterns:**
204```bash
205# Find information about specific models
206rg "Quantile Regression" references/
208# Find diagnostic tests
209rg "Breusch-Pagan" references/stats_diagnostics.md
211# Find time series guidance
212rg "SARIMAX" references/time_series.md
213```

references/stats_diagnostics.md

Comprehensive statistical testing and diagnostics:

  • Residual diagnostics (autocorrelation, heteroskedasticity, normality)
  • Influence and outlier detection
  • Hypothesis tests (parametric and non-parametric)
  • ANOVA and post-hoc tests
  • Multiple comparisons correction
  • Robust covariance matrices
  • Power analysis and effect sizes

When to reference:

  • Need detailed parameter explanations
  • Choosing between similar models
  • Troubleshooting convergence or diagnostic issues
  • Understanding specific test statistics
  • Looking for code examples for advanced features

Search patterns:

# Find information about specific models
rg "Quantile Regression" references/

# Find diagnostic tests
rg "Breusch-Pagan" references/stats_diagnostics.md

# Find time series guidance
rg "SARIMAX" references/time_series.md
Raw lines 186 to 214
215## Common Pitfalls to Avoid
2171. **Incorrect intercept**: Keep training/prediction design columns identical; use `has_constant="add"` for a new array that lacks an intercept, including a single new row. Ordered/conditional models require no constant.
2182. **Ignoring assumptions**: Check residuals, heteroskedasticity, autocorrelation
2193. **Wrong model for the estimand**: Match support, mean and variance to the outcome and sampling design; outcome type alone does not select a valid model
2204. **Not checking convergence**: Look for optimization warnings
2215. **Misinterpreting coefficients**: Remember link functions (log, logit, etc.)
2226. **Using Poisson with overdispersion**: Check dispersion, use Negative Binomial if needed
2237. **Not using robust SEs**: When heteroskedasticity or clustering present
2248. **Overfitting**: Too many parameters relative to sample size
2259. **Data leakage**: Fitting on test data or using future information
22610. **Not validating predictions**: Always check out-of-sample performance
22711. **Invalid comparison**: Non-nested or boundary comparisons do not have the usual chi-square LR reference distribution
22812. **Ignoring influential observations**: Check Cook's distance and leverage
22913. **Multiple testing**: Correct p-values when testing many hypotheses
23014. **Over/under-differencing**: ARIMA models integrated data through `d`; do not difference manually and again inside ARIMA
23115. **Confusing uncertainty targets**: A GLM interval for the conditional mean omits future outcome noise; state-space forecasts include model-based forecast error

Common Pitfalls to Avoid

  1. Incorrect intercept: Keep training/prediction design columns identical; use has_constant="add" for a new array that lacks an intercept, including a single new row. Ordered/conditional models require no constant.
  2. Ignoring assumptions: Check residuals, heteroskedasticity, autocorrelation
  3. Wrong model for the estimand: Match support, mean and variance to the outcome and sampling design; outcome type alone does not select a valid model
  4. Not checking convergence: Look for optimization warnings
  5. Misinterpreting coefficients: Remember link functions (log, logit, etc.)
  6. Using Poisson with overdispersion: Check dispersion, use Negative Binomial if needed
  7. Not using robust SEs: When heteroskedasticity or clustering present
  8. Overfitting: Too many parameters relative to sample size
  9. Data leakage: Fitting on test data or using future information
  10. Not validating predictions: Always check out-of-sample performance
  11. Invalid comparison: Non-nested or boundary comparisons do not have the usual chi-square LR reference distribution
  12. Ignoring influential observations: Check Cook's distance and leverage
  13. Multiple testing: Correct p-values when testing many hypotheses
  14. Over/under-differencing: ARIMA models integrated data through d; do not difference manually and again inside ARIMA
  15. Confusing uncertainty targets: A GLM interval for the conditional mean omits future outcome noise; state-space forecasts include model-based forecast error
Raw lines 215 to 232
233## Getting Help
235For detailed documentation and examples:
236- Official docs: https://www.statsmodels.org/stable/
237- User guide: https://www.statsmodels.org/stable/user-guide.html
238- Examples: https://www.statsmodels.org/stable/examples/index.html
239- API reference: https://www.statsmodels.org/stable/api.html

Getting Help

For detailed documentation and examples:

  • Official docs: https://www.statsmodels.org/stable/
  • User guide: https://www.statsmodels.org/stable/user-guide.html
  • Examples: https://www.statsmodels.org/stable/examples/index.html
  • API reference: https://www.statsmodels.org/stable/api.html
Raw lines 233 to 240
Boilerplate, lines 241 to 256. The same text appears in 125 other files here. Close
241## Citing Scientific Agent Skills
243This skill is part of Scientific Agent Skills by K-Dense. If it materially contributed to a
244manuscript, report, presentation, or code release, add the paper to the references or
245software section and tell the user you did so:
247> Kassis, T., Agarwal, V., He, Y., Patel, D., & Brueckner, A. M. (2026). Scientific Agent
248> Skills: A Library of Procedural Knowledge for Research Agents. arXiv:2609.00065.
249> https://doi.org/10.48550/arXiv.2609.00065
251Always cite the current version. The DOI and https://arxiv.org/abs/2609.00065 resolve to the
252latest arXiv version, so never append a version suffix such as `v1`. When network access is
253available, fetch https://arxiv.org/abs/2609.00065 (or
254http://export.arxiv.org/api/query?id_list=2609.00065) before writing the reference and take
255the author list, year, and version from that record. If the record lists a journal reference
256or publisher DOI, cite the published version instead.

From K-Dense-AI/scientific-agent-skills at 5f2bc03, 2026-10-26. Not read by a model yet. Summary and techniques by Claude Opus 5.5 on 2026-11-06.