我想创建一个 Anova Table 数据集有一个依赖列和其他独立列
I want to create an Anova Table with Dataset having one dependent column and otheras independent column
我有一个包含列 col1、col2、col3、col4、col5 的数据集。我希望 col1 作为因变量,其他作为自变量。我将如何创建公式?
我正在这样创作。
我混淆了 ?
应该是什么
import statsmodels.api as sm
from statsmodels.formula.api import ols
model = ols('anovaData["col1"] ~ anovaData["?"]', data=anovaData).fit()
编辑1:
我将所需的列放在列表中,并将 ols 作为自变量提供。效果很好,但我想要的格式不符合要求。
y = [col2,col3,col4,col5]
model = ols('anovaData["col1"] ~ anovaData[y]', data=anovaData).fit()
====================================================================================
coef std err t P>|t| [0.025 0.975]
------------------------------------------------------------------------------------
Intercept -0.0177 0.013 -1.319 0.190 -0.044 0.009
anovaData[y][0] 0.0003 0.001 0.211 0.833 -0.002 0.003
anovaData[y][1] -0.0007 0.000 -3.829 0.000 -0.001 -0.000
anovaData[y][2] 0.0032 0.001 2.853 0.005 0.001 0.005
anovaData[y][3] -0.0008 0.000 -2.162 0.032 -0.002 -7.22e-05
想要的是
====================================================================================
coef std err t P>|t| [0.025 0.975]
------------------------------------------------------------------------------------
Intercept -0.0177 0.013 -1.319 0.190 -0.044 0.009
col2 0.0003 0.001 0.211 0.833 -0.002 0.003
col3 -0.0007 0.000 -3.829 0.000 -0.001 -0.000
col4 0.0032 0.001 2.853 0.005 0.001 0.005
col5 -0.0008 0.000 -2.162 0.032 -0.002 -7.22e-05
这对我有用
formula = 'col1 ~ ' + ' + '.join(['%s' % variable for variable in y])
model = ols(formula=formula, data=anovaData).fit()
我有一个包含列 col1、col2、col3、col4、col5 的数据集。我希望 col1 作为因变量,其他作为自变量。我将如何创建公式? 我正在这样创作。 我混淆了 ?
应该是什么import statsmodels.api as sm
from statsmodels.formula.api import ols
model = ols('anovaData["col1"] ~ anovaData["?"]', data=anovaData).fit()
编辑1: 我将所需的列放在列表中,并将 ols 作为自变量提供。效果很好,但我想要的格式不符合要求。
y = [col2,col3,col4,col5]
model = ols('anovaData["col1"] ~ anovaData[y]', data=anovaData).fit()
====================================================================================
coef std err t P>|t| [0.025 0.975]
------------------------------------------------------------------------------------
Intercept -0.0177 0.013 -1.319 0.190 -0.044 0.009
anovaData[y][0] 0.0003 0.001 0.211 0.833 -0.002 0.003
anovaData[y][1] -0.0007 0.000 -3.829 0.000 -0.001 -0.000
anovaData[y][2] 0.0032 0.001 2.853 0.005 0.001 0.005
anovaData[y][3] -0.0008 0.000 -2.162 0.032 -0.002 -7.22e-05
想要的是
====================================================================================
coef std err t P>|t| [0.025 0.975]
------------------------------------------------------------------------------------
Intercept -0.0177 0.013 -1.319 0.190 -0.044 0.009
col2 0.0003 0.001 0.211 0.833 -0.002 0.003
col3 -0.0007 0.000 -3.829 0.000 -0.001 -0.000
col4 0.0032 0.001 2.853 0.005 0.001 0.005
col5 -0.0008 0.000 -2.162 0.032 -0.002 -7.22e-05
这对我有用
formula = 'col1 ~ ' + ' + '.join(['%s' % variable for variable in y])
model = ols(formula=formula, data=anovaData).fit()