API 参考

statsmodels 的主要 API 分为模型

  • statsmodels.api: 横截面模型和方法。通常使用 import statsmodels.api as sm 导入。

  • statsmodels.tsa.api: 时间序列模型和方法。通常使用 import statsmodels.tsa.api as tsa 导入。

  • statsmodels.formula.api: 用于使用公式字符串和 DataFrame 指定模型的便捷接口。此 API 直接公开支持公式 API 的模型的 from_formula 类方法。通常使用 import statsmodels.formula.api as smf 导入

API 重点关注模型以及最常用的统计检验和工具。 导入路径和结构 解释了这两个 API 模块的设计以及如何从 API 导入与直接从定义模型的模块导入的不同之处。有关可用模型、统计信息和工具的完整列表,请参阅 用户指南 中的详细主题页面。

statsmodels.api

回归

OLS(endog[, exog, missing, hasconst])

普通最小二乘法

WLS(endog, exog[, weights, missing, hasconst])

加权最小二乘法

GLS(endog, exog[, sigma, missing, hasconst])

广义最小二乘法

GLSAR(endog[, exog, rho, missing, hasconst])

具有 AR 协方差结构的广义最小二乘法

RecursiveLS(endog, exog[, constraints])

递归最小二乘法

RollingOLS(endog, exog[, window, min_nobs, ...])

滚动普通最小二乘法

RollingWLS(endog, exog[, window, weights, ...])

滚动加权最小二乘法

插补

BayesGaussMI(data[, mean_prior, cov_prior, ...])

使用高斯模型的贝叶斯插补。

MI(imp, model[, model_args_fn, ...])

MI 使用提供的插补器对象执行多次插补。

MICE(model_formula, model_class, data[, ...])

使用链式方程的多重插补。

MICEData(data[, perturbation_method, k_pmm, ...])

包装数据集以允许使用 MICE 处理缺失数据。

广义估计方程

GEE(endog, exog, groups[, time, family, ...])

使用广义估计方程的边际回归模型。

NominalGEE(endog, exog, groups[, time, ...])

使用 GEE 的名义响应边际回归模型。

OrdinalGEE(endog, exog, groups[, time, ...])

使用 GEE 的序数响应边际回归模型

广义线性模型

GLM(endog, exog[, family, offset, exposure, ...])

广义线性模型

GLMGam(endog[, exog, smoother, alpha, ...])

广义加性模型 (GAM)

BinomialBayesMixedGLM(endog, exog, exog_vc, ...)

使用贝叶斯估计的广义线性混合模型

PoissonBayesMixedGLM(endog, exog, exog_vc, ident)

使用贝叶斯估计的广义线性混合模型

离散和计数模型

Logit(endog, exog[, offset, check_rank])

Logit 模型

Probit(endog, exog[, offset, check_rank])

Probit 模型

MNLogit(endog, exog[, check_rank])

多项 Logit 模型

OrderedModel(endog, exog[, offset, distr])

基于逻辑或正态分布的序数模型

Poisson(endog, exog[, offset, exposure, ...])

泊松模型

NegativeBinomial(endog, exog[, ...])

负二项式模型

NegativeBinomialP(endog, exog[, p, offset, ...])

广义负二项式 (NB-P) 模型

GeneralizedPoisson(endog, exog[, p, offset, ...])

广义泊松模型

ZeroInflatedPoisson(endog, exog[, ...])

泊松零膨胀模型

ZeroInflatedNegativeBinomialP(endog, exog[, ...])

零膨胀广义负二项式模型

ZeroInflatedGeneralizedPoisson(endog, exog)

零膨胀广义泊松模型

ConditionalLogit(endog, exog[, missing])

将条件逻辑回归模型拟合到分组数据。

ConditionalMNLogit(endog, exog[, missing])

将条件多项式逻辑回归模型拟合到分组数据。

ConditionalPoisson(endog, exog[, missing])

将条件泊松回归模型拟合到分组数据。

多元模型

Factor([endog, n_factor, corr, method, smc, ...])

因子分析

MANOVA(endog, exog[, missing, hasconst])

多元方差分析

PCA(data[, ncomp, standardize, demean, ...])

主成分分析

其他模型

MixedLM(endog, exog, groups[, exog_re, ...])

线性混合效应模型

SurvfuncRight(time, status[, entry, title, ...])

生存函数的估计和推断。

PHReg(endog, exog[, status, entry, strata, ...])

Cox 比例风险回归模型

QuantReg(endog, exog, **kwargs)

分位数回归

RLM(endog, exog[, M, missing])

稳健线性模型

BetaModel(endog, exog[, exog_precision, ...])

Beta 回归.

图形

ProbPlot(data[, dist, fit, distargs, a, ...])

Q-Q 和 P-P 概率图

qqline(ax, line[, x, y, dist, fmt])

绘制 qqplot 的参考线。

qqplot(data[, dist, distargs, a, loc, ...])

x 的分位数与分布的分位数/ppf 的 Q-Q 图。

qqplot_2samples(data1, data2[, xlabel, ...])

两个样本分位数的 Q-Q 图。

统计量

Description(data[, stats, numeric, ...])

数据的扩展描述性统计量

describe(data[, stats, numeric, ...])

数据的扩展描述性统计量

工具

test([extra_args, exit])

运行测试套件

add_constant(data[, prepend, has_constant])

将一列常数添加到数组中。

load_pickle(fname)

加载先前保存的对象

show_versions([show_dirs])

列出 statsmodels 和任何已安装依赖项的版本

webdoc([func, stable])

打开浏览器并显示在线文档

statsmodels.tsa.api

统计和检验

acf(x[, adjusted, nlags, qstat, fft, alpha, ...])

计算自相关函数。

acovf(x[, adjusted, demean, fft, missing, nlag])

估计自协方差。

adfuller(x[, maxlag, regression, autolag, ...])

增广的 Dickey-Fuller 单位根检验。

bds(x[, max_dim, epsilon, distance])

时间序列独立性的 BDS 检验统计量

ccf(x, y[, adjusted, fft, nlags, alpha])

互相关函数。

ccovf(x, y[, adjusted, demean, fft])

计算两个序列之间的互协方差。

coint(y0, y1[, trend, method, maxlag, ...])

检验单变量方程的无协整性。

kpss(x[, regression, nlags, store])

Kwiatkowski-Phillips-Schmidt-Shin 平稳性检验。

pacf(x[, nlags, method, alpha])

偏自相关估计。

pacf_ols(x[, nlags, efficient, adjusted])

使用 OLS 计算偏自相关。

pacf_yw(x[, nlags, method])

使用非递归 Yule-Walker 方法估计偏自相关。

q_stat(x, nobs)

计算 Ljung-Box Q 统计量。

range_unit_root_test(x[, store])

范围单位根平稳性检验。

zivot_andrews

Zivot-Andrews 结构性断点单位根检验。

单变量时间序列分析

AutoReg(endog, lags[, trend, seasonal, ...])

自回归 AR-X(p) 模型

ARDL(endog, lags[, exog, order, trend, ...])

自回归分布滞后 (ARDL) 模型

ARIMA(endog[, exog, order, seasonal_order, ...])

自回归积分移动平均 (ARIMA) 模型及其扩展

SARIMAX(endog[, exog, order, ...])

带外生回归量的季节性自回归积分移动平均模型

ardl_select_order(endog, maxlag, exog, maxorder)

ARDL 阶数选择

arma_order_select_ic(y[, max_ar, max_ma, ...])

计算多个 ARMA 模型的信息准则。

arma_generate_sample(ar, ma, nsample[, ...])

从 ARMA 模型中模拟数据。

ArmaProcess([ar, ma, nobs])

指定滞后多项式的 ARMA 过程的理论特性。

UECM(endog, lags[, exog, order, trend, ...])

无约束误差相关模型 (UECM)

指数平滑

ExponentialSmoothing(endog[, trend, ...])

Holt-Winters 指数平滑

Holt(endog[, exponential, damped_trend, ...])

Holt 指数平滑

SimpleExpSmoothing(endog[, ...])

简单指数平滑

ExponentialSmoothing(endog[, trend, ...])

线性指数平滑模型

ETSModel(endog[, error, trend, ...])

ETS 模型。

多元时间序列模型

DynamicFactor(endog, k_factors, factor_order)

动态因子模型

DynamicFactorMQ(endog[, k_endog_monthly, ...])

带有 EM 算法的动态因子模型;支持月度/季度数据。

VAR(endog[, exog, dates, freq, missing])

拟合 VAR(p) 过程并进行滞后阶数选择

VARMAX(endog[, exog, order, trend, ...])

带外生回归量的向量自回归移动平均模型

SVAR(endog, svar_type[, dates, freq, A, B, ...])

拟合 VAR 并估计 A 和 B 的结构性成分,定义如下:

VECM(endog[, exog, exog_coint, dates, freq, ...])

代表向量误差修正模型 (VECM) 的类。

UnobservedComponents(endog[, level, trend, ...])

单变量不可观测成分时间序列模型

滤波器和分解

seasonal_decompose(x[, model, filt, period, ...])

使用移动平均进行季节性分解。

STL(endog[, period, seasonal, trend, ...])

使用 LOESS 进行季节趋势分解。

MSTL(endog[, periods, windows, lmbda, ...])

使用 LOESS 对多个季节性进行季节趋势分解。

bkfilter(x[, low, high, K])

使用 Baxter-King 带通滤波器过滤时间序列。

cffilter(x[, low, high, drift])

Christiano Fitzgerald 非对称随机游走滤波器。

hpfilter(x[, lamb])

Hodrick-Prescott 滤波器。

马尔可夫状态转换模型

MarkovAutoregression(endog, k_regimes, order)

马尔可夫状态转换回归模型

MarkovRegression(endog, k_regimes[, trend, ...])

一阶 k-状态马尔可夫切换回归模型

预测

STLForecast(endog, model, *[, model_kwargs, ...])

使用 STL 删除季节性进行基于模型的预测

ThetaModel(endog, *[, period, ...])

Assimakopoulos 和 Nikolopoulos (2000) 的 Theta 预测模型

时间序列工具

add_lag(x[, col, lags, drop, insert])

给定数组,返回包含滞后的数组。

add_trend(x[, trend, prepend, has_constant])

向数组添加趋势和/或常数。

detrend(x[, order, axis])

沿轴 0 或 1 去除具有给定阶数的趋势的数组。

lagmat(x, maxlag[, trim, original, use_pandas])

创建滞后的二维数组。

lagmat2ds(x, maxlag0[, maxlagex, dropex, ...])

为二维数组生成滞后矩阵,列按变量排列。

DeterministicProcess(index, *[, period, ...])

确定性项的容器类。

X12/X13 接口

x13_arima_analysis(endog[, maxorder, ...])

对月度或季度数据执行 x13-arima 分析。

x13_arima_select_order(endog[, maxorder, ...])

使用 x12/x13 ARIMA 执行自动季节性 ARIMA 阶数识别。

statsmodels.formula.api

模型

小写名称是对应模型类的 from_formula 方法的别名。公式 API 中公开的方法的功能描述是通用的。有关详细信息,请参阅父模型的文档。

gls(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

wls(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

ols(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

glsar(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

mixedlm(formula, data[, re_formula, ...])

从公式和数据框创建模型。

glm(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

gee(formula, groups, data[, subset, time, ...])

从公式和数据框创建模型。

ordinal_gee(formula, groups, data[, subset, ...])

从公式和数据框创建模型。

nominal_gee(formula, groups, data[, subset, ...])

从公式和数据框创建模型。

rlm(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

logit(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

probit(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

mnlogit(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

poisson(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

negativebinomial(formula, data[, subset, ...])

从公式和数据框创建模型。

quantreg(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

phreg(formula, data[, status, entry, ...])

从公式和数据框创建比例风险回归模型。

glmgam(formula, data[, subset, drop_cols])

从公式和数据框创建模型。

conditional_logit(formula, data[, subset, ...])

从公式和数据框创建模型。

conditional_mnlogit(formula, data[, subset, ...])

从公式和数据框创建模型。

conditional_poisson(formula, data[, subset, ...])

从公式和数据框创建模型。


上次更新:2024 年 10 月 3 日