SuperAPI AI 工具集

statsmodels

通用与其它

查看项目

更新于 10-16 01:48

技能介绍

用途:Statsmodels 面向统计推断与解释,适用于线性回归(OLS、WLS)、广义线性模型(Logistic、Poisson、Gamma)、时间序列(ARIMA、SARIMAX、VAR、状态空间)、假设检验(t 检验、ANOVA、正态性与异方差检验)、生存分析(Kaplan-Meier、Cox 比例风险)、处理效应与因果推断、非参数统计(核密度估计)。

主要能力:提供两套 API——statsmodels.api 使用类 NumPy 数组、需手动加常数项;statsmodels.formula.api 使用 R 风格公式(如 y ~ x1 + x2)并直接配合 Pandas DataFrame,多数用户推荐后者。可用 results.summary() 输出含系数、p 值、F 统计量、Jarque-Bera 等的完整表,也支持结果对象取 pvalues、params、resid 等。

安装与导入:pip install statsmodels patsy;import statsmodels.api as sm;import statsmodels.formula.api as smf。

必要用法要点:使用数组 API 时必须 X = sm.add_constant(X),否则模型无截距;公式中用 C() 显式声明分类变量;存在异方差可用 cov_type='HC3' 或 'cluster';检查残差、共线性(VIF)并用 AIC/BIC 惩罚过拟合。时间序列建模前用 adfuller 检验平稳性,非平稳需差分或设 d 项。

限制:以推断为目标,不等同于预测评估;系数显著不代表因果;高 R² 不保证模型合理;不应外推训练数据范围之外;超大样本下 patsy 设计矩阵可能耗内存,可改用手工构造矩阵。