x=range(100)
y=sin(x)
result=sm.OLS(x,y).fit()
result.predict(x)
给出:
ValueError: matrices are not aligned
这是非常简单的代码,不确定它为什么不起作用?我搜索了很多论坛,但找不到确切的解决方案。
答案 0 :(得分:1)
快速回答:
我认为你希望x和y反转result=sm.OLS(y, x).fit()
首先是因变量(y
),然后是解释变量数组(x
)。
预测调用适用于statsmodels master,但也许你需要旧版本的2-D x
:
result.predict(x[:,None])
将解释变量放入column_array。我不记得1-D x的更改时间。)
另请注意,当我们不使用公式界面时,不会自动添加常数/截距。
也可以通过results.fittedvalues
访问样本或培训数据的预测。