我无法对线性回归模型执行annova。我附上了下面的简化代码。请告诉我怎么修。
import statsmodels.api as sm
import numpy as np
# define the data
x1 = np.random.rand(100)
x2 = np.random.rand(100)
y = 2*x1 + 3*x2 + np.random.normal(size=100)
# build the model with all independent variables
X = sm.add_constant(np.column_stack((x1, x2)))
model = sm.OLS(y, X).fit()
# perform the F-test
f_value, p_value, _ = sm.stats.anova_lm(model, typ=1)
错误屏幕截图:
1条答案
按热度按时间9udxz4iz1#
来自
anova_lm
文档:注意事项
模型统计量以args的顺序给出。模型必须使用公式API进行拟合。
在定义模型时,您需要使用公式API
另外,我不确定为什么要在
X
中添加一个常数。这样,拟合的模型最终会有两个截距。我猜你真正想做的是