我用python编写了以下代码,使用statsmodels包来创建OLS回归模型。我尝试了不同数据集的代码,得到了除第一个(截距)系数外所有系数值都接近零的模型。代码可能有什么问题?你知道吗
data1 = pandas.concat([Y, X], axis = 1)
dta = lagmat2ds(data1, mxlg, trim='both', dropex=1)
dtaown = sm.add_constant(dta[:, 0:(mxlg + 1)], prepend = False)
dtajoint = sm.add_constant(dta[:, 0:], prepend = False)
res2down = sm.OLS(dta[:, 0], dtaown).fit()
res2djoint = sm.OLS(dta[:, 0], dtajoint).fit()
Here the sm is statsmodels.api as sm and for sample testing you can consider the dataset sm.datasets.spector.
数据的结构方式—您正在建模
Y
与Y|lag Y|constant
。请注意,OLS
文档(https://www.statsmodels.org/dev/generated/statsmodels.regression.linear_model.OLS.html)指出-所以你看到的第一个值不是截距,而是拟合系数
Y
对Y
,也就是1.0
。你知道吗你可以试着检查你是否得到了合理的结果,就是把
Y
排除在这样的预测之外-相关问题 更多 >
编程相关推荐