gpt4 book ai didi

python - 如何解释Python OLS Statsmodel的汇总表?

转载 作者:行者123 更新时间:2023-12-02 02:40:50 24 4
gpt4 key购买 nike

我有一个连续因变量 y 和一个名为 control_grid 的独立分类变量 x。 x 包含两个变量:c 和 g

使用 python 包 statsmodel 我试图查看自变量是否对 y 变量有显着影响,如下所示:

model = smf.ols('y ~ c(x)', data=df)
results = model.fit()
table = sm.stats.anova_lm(results, typ=2)

打印表格给出以下输出:

     OLS Regression Results                            
==============================================================================
Dep. Variable: sedimentation R-squared: 0.167
Model: OLS Adj. R-squared: 0.165
Method: Least Squares F-statistic: 86.84
Date: Fri, 13 Jul 2018 Prob (F-statistic): 5.99e-19
Time: 16:15:51 Log-Likelihood: -2019.2
No. Observations: 436 AIC: 4042.
Df Residuals: 434 BIC: 4050.
Df Model: 1
Covariance Type: nonrobust
=====================================================================================
coef std err t P>|t| [0.025 0.975]
-------------------------------------------------------------------------------------
Intercept -6.0243 1.734 -3.474 0.001 -9.433 -2.616
control_grid[T.g] 22.2504 2.388 9.319 0.000 17.558 26.943
==============================================================================
Omnibus: 30.623 Durbin-Watson: 1.064
Prob(Omnibus): 0.000 Jarque-Bera (JB): 45.853
Skew: -0.510 Prob(JB): 1.10e-10
Kurtosis: 4.218 Cond. No. 2.69
==============================================================================

在显示系数的表中,我不明白因变量的描述。

它说:

control_grid[T.g]

“T”是什么?它只考虑两个变量之一吗?只在“g”处起作用,而在“c”处不起作用?

如果你去here您会看到,在摘要中还显示了所有四个变量“N”、“S”、“E”和“W”的分类数据区域。

附注我的数据如下所示:

index         sedimentation control_grid
0 5.0 c
1 10.0 g
2 0.0 c
3 -10.0 c
4 0.0 g
5 -20.0 g
6 30.0 g
7 40.0 g
8 -10.0 c
9 45.0 g
10 45.0 g
11 10.0 c
12 10.0 g
13 10.0 c
14 6.0 g
15 10.0 c
16 29.0 c
17 3.0 g
18 23.0 c
19 34.0 g

最佳答案

我不是专家,但我会尽力解释一下。首先,您应该知道方差分析是一种回归分析,因此您正在构建模型 Y ~ X,但在方差分析中 X 是一个分类变量。在您的情况下,Y = 沉降,X = control_grid(这是分类的),因此模型是“沉降 ~ control_grid”。

Ols 执行回归分析,因此它计算线性模型的参数:Y = Bo + B1X,但是,鉴于您的 X 是分类的,您的 X 是虚拟编码的,这意味着 X 只能是 0 或 1,什么是与分类数据一致。请注意,在方差分析中,估计的参数数量等于类别数量 - 1,您的数据中只有 2 个类别(g 和 c),因此 ols 报告中仅显示一个参数。 “T.g”表示该参数对应于“g”类别。那么你的模型是 Y = Bo + T.g*X

现在,T.c 的参数被视为 Bo,所以实际上,您的模型是:

Y = T.cX + T.gX,其中 X 是 O 或 1,具体取决于它是“c”还是“g”。

所以,你问的是:

1)“T”是什么?T (T.g) 仅指示您估计并显示的参数对应于“g”类别。

2)它只查看两个变量之一吗?不,分析估计了两个类别(c 和 g)的参数,但截距 Bo 表示数据“c”中该类别其他级别的系数。

3) 只在“g”处起作用,而不在“c”处起作用?不,事实上,分析着眼于“g”和“c”的效果。如果您查看系数 T.g 和截距 (T.c) 的值,您可以意识到它们是否显着(p 值),并且您可以判断它们是否对“沉降”有影响。

干杯,

关于python - 如何解释Python OLS Statsmodel的汇总表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51356330/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com