首页 > 解决方案 > 手动添加成本会导致 MissingDataError

问题描述

我正在尝试使用库来训练带有截距的线性回归模型statsmodels.api(因为这样我可以获得带有参数重要性的摘要)。

不幸的是,这种方法不起作用

X_train_2 = sm.add_constant(X_train)

因此,我尝试通过执行以下操作手动向我的 X_train 数据集添加 1 个成本向量:

const = pd.Series([1]*1460, name='const')


X_train_2 = pd.concat([const , X_train  ] , axis=1)

model_sm_1 = sm.OLS(Y_train , X_train_2  ).fit()

但又得到一个错误:

文件“C:\Users\myname\Anaconda3\lib\site-packages\statsmodels\base\data.py”,第 133 行,_handle_constant raise MissingDataError('exog contains inf or nans')

MissingDataError:exog 包含 inf 或 nans

我的问题是2:

1) 我该如何解决这个错误 2) 是否存在另一个提供汇总表的线性回归库?(sklearn 没有给我这个)

标签: python-3.xlinear-regressionstatsmodels

解决方案


推荐阅读