python方差分析模型的预测结果怎么看_statsmodels中方差分析表结果解析
引言
通常我們?cè)趯?duì)多個(gè)變量進(jìn)行統(tǒng)計(jì)分析的時(shí)候,結(jié)果的匯總和整理需要耗費(fèi)大量的時(shí)間和精力,稍有不慎還有可能出現(xiàn)錯(cuò)誤。因此在對(duì)多個(gè)變量統(tǒng)計(jì)分析的時(shí)候,使用自動(dòng)化的腳本對(duì)結(jié)果進(jìn)行整理和匯總就十分的方便了。
這里筆者使用Python當(dāng)中的statsmodels模塊,以方差分析為例進(jìn)行演示和說明。
方差分析結(jié)果解析
import pandas as pd
df = pd.read_excel(r'20200104_test.xlsx', header=0, index_col=0)
df.head()
import statsmodels.formula.api as smf
import statsmodels.api as sm
formula = f'A~C(Group)'
model = smf.ols(formula=formula, data=df).fit()
table = sm.stats.anova_lm(model, typ=3)
table
f = table['F']['C(Group)']
p = table['PR(>F)']['C(Group)']
resDf = pd.DataFrame()
resDf = resDf.append({'F': f, 'P': p, 'Formula': formula}, ignore_index=True)
resDf.head()
可以看到,這里table是方差分析的結(jié)果數(shù)據(jù),可以通過類似map鍵值索引的方式去讀取不同的數(shù)據(jù)。
事后檢驗(yàn)結(jié)果解析
方差分析后,只能對(duì)組效應(yīng)是否顯著進(jìn)行判斷,但具體是哪幾個(gè)組之間存在顯著差異還需要進(jìn)一步通過事后檢驗(yàn)來確定。這里使用TukeyHSD檢驗(yàn)。
from statsmodels.stats.multicomp import pairwise_tukeyhsd
from statsmodels.stats.multicomp import MultiComparison
mc = MultiComparison(df['A'], df['Group'])
mc_results = mc.tukeyhsd()
print(mc_results)
meandiff = mc_results._results_table[1][2].data
meandiff
參考
總結(jié)
以上是生活随笔為你收集整理的python方差分析模型的预测结果怎么看_statsmodels中方差分析表结果解析的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python requests和urll
- 下一篇: angularjs 元素重复指定次数_[