相关疑难解决方法(0)

为什么R和statsmodels给出的ANOVA结果略有不同?

使用小R样本数据集和来自statsmodels的ANOVA示例,其中一个变量的自由度报告不同,并且F值结果也略有不同.也许他们的默认方法略有不同?我可以设置statsmodels来使用R的默认值吗?

import pandas as pd
import statsmodels.api as sm
from statsmodels.formula.api import ols


##R code on R sample dataset

#> anova(with(ChickWeight, lm(weight ~ Time + Diet)))
#Analysis of Variance Table
#
#Response: weight
#           Df  Sum Sq Mean Sq  F value    Pr(>F)
#Time        1 2042344 2042344 1576.460 < 2.2e-16 ***
#Diet        3  129876   43292   33.417 < 2.2e-16 ***
#Residuals 573  742336    1296
#write.csv(file='ChickWeight.csv', x=ChickWeight, row.names=F)

cw = pd.read_csv('ChickWeight.csv')
cw_lm=ols('weight ~ Time + Diet', data=cw).fit()   

print(sm.stats.anova_lm(cw_lm, typ=2))
#                  sum_sq …
Run Code Online (Sandbox Code Playgroud)

r anova pandas statsmodels

5
推荐指数
1
解决办法
1228
查看次数

为什么在 Python 中使用 anova_lm 显示形状未对齐?

基于这个问题在此处输入链接描述,我使用 statsmodels 在 python 中实现方差分析。我的数据在 Pandas DataFrame 中并且country是一个分类变量。

def anova(data):

    mod = ols('C(country) ~ playerRank+playerGames', data=data).fit()
    aov_table = sm.stats.anova_lm(mod, typ=2)
    print aov_table
Run Code Online (Sandbox Code Playgroud)

当我使用上述功能时,它显示:

 File "<ipython-input-32-e77ae8a55692>", line 1, in <module>
    aov_table = sm.stats.anova_lm(mod, typ=2)
  File "C:\ProgramData\Anaconda2\lib\site-packages\statsmodels\stats\anova.py", line 326, in anova_lm
    return anova_single(model, **kwargs)
  File "C:\ProgramData\Anaconda2\lib\site-packages\statsmodels\stats\anova.py", line 83, in anova_single
    robust)
  File "C:\ProgramData\Anaconda2\lib\site-packages\statsmodels\stats\anova.py", line 178, in anova2_lm_single
    cov = _get_covariance(model, None)
  File "C:\ProgramData\Anaconda2\lib\site-packages\statsmodels\stats\anova.py", line 15, in _get_covariance
    return model.cov_params()
  File "C:\ProgramData\Anaconda2\lib\site-packages\statsmodels\base\wrapper.py", line 95, in wrapper
    obj = data.wrap_output(func(results, …
Run Code Online (Sandbox Code Playgroud)

python anova statsmodels

5
推荐指数
0
解决办法
631
查看次数

标签 统计

anova ×2

statsmodels ×2

pandas ×1

python ×1

r ×1