Python 多因素方差分析

2021-08-28 17:02:43 字數 2247 閱讀 1085

在實際應用中,乙個實驗的指標往往受到多個因素的影響。

例如飲料的銷量有可能受到銷售地區或者飲料顏色的影響。在方差分析中,若把飲料的顏色看做影響銷量的因素a,把銷售地區看做影響因素b。同時對因素a和因素b進行分析,就稱為雙因素方差分析。

a	b	c

a1 b1 20

a1 b2 22

a1 b3 24

a1 b4 16

a1 b5 26

a2 b1 12

a2 b2 10

a2 b3 14

a2 b4 4

a2 b5 22

a3 b1 20

a3 b2 20

a3 b3 18

a3 b4 8

a3 b5 16

a4 b1 10

a4 b2 12

a4 b3 18

a4 b4 6

a4 b5 20

a5 b1 14

a5 b2 6

a5 b3 10

a5 b4 18

a5 b5 10

from statsmodels.formula.api import ols

from statsmodels.stats.anova import anova_lm

formula =

'c~ a + b '

anova_results = anova_lm(ols(formula,df)

.fit())

print

(anova_results)

df  sum_sq  mean_sq         f    pr(>f)

a 4.0 335.36 83.84 3.874307 0.021886

b 4.0 199.36 49.84 2.303142 0.103195

residual 16.0 346.24 21.64 nan nan

檢驗的結論:

因素a的p值0.021886<0.05,拒絕原假設,說明飲料顏色對銷量有顯著影響;而因素b的p值0.103195>0.05,不能拒絕原假設,因此沒有充分的理由說明銷售地區對銷量有顯著影響。

然而,我們知道了顏色對銷量有顯著影響,那麼是哪種顏色呢?

使用tukey方法對顏色進行多重比較

from statsmodels.stats.multicomp import pairwise_tukeyhsd

print

(pairwise_tukeyhsd(df[

'c']

, df[

'a']

))

multiple comparison of means - tukey hsd,fwer=0.05

*********************************************=

group1 group2 meandiff lower upper reject

----------------------------------------------

1 2 -9.2 -19.0855 0.6855 false

1 3 -5.2 -15.0855 4.6855 false

1 4 -8.4 -18.2855 1.4855 false

1 5 -10.0 -19.8855 -0.1145 true

2 3 4.0 -5.8855 13.8855 false

2 4 0.8 -9.0855 10.6855 false

2 5 -0.8 -10.6855 9.0855 false

3 4 -3.2 -13.0855 6.6855 false

3 5 -4.8 -14.6855 5.0855 false

4 5 -1.6 -11.4855 8.2855 false

----------------------------------------------

結果說明:1和5的reject=true,說明這兩種顏色有顯著性差異

雙因素方差分析 多因素方差分析

在前面我們講過簡單的單因素方差分析,這一篇我們講講雙因素方差分析以及多因素方差分析,雙因素方差分析是最簡單的多因素方差分析。單因素分析就是只考慮乙個因素會對要比較的均值產生影響,而多因素分析是有多個因素會對均值產生影響。需要注意的是乙個因素可能會有不同的水平值,即不同的取值。比如要判斷某一款藥對某種...

雙因素方差分析 兩因素方差分析怎麼理解?

看完單因素方差分析,一般的統計學教課書中並不會直接講two way 雙因素 方差分析,而是講 隨機區組設計的方差分析 那這兩者有什麼關係嗎?從統計方法的角度來看,隨機區組設計的方差分析其實就屬於兩因素 或多因素 方差分析,一種說法認為,為什麼不直接叫兩因素,是因為不把 區組因素 算作一類真正的 因素...

單因素方差分析 one way ANOVA

單因素方差分析 一 單因素方差分析概念 是用來研究乙個控制變數的不同水平是否對觀測變數產生了顯著影響。這裡,由於僅研究單個因素對觀測變數的影響,因此稱為單因素方差分析。例如,分析不同施肥量是否給農作物產量帶來顯著影響,考察地區差異是否影響婦女的生育率,研究學歷對工資收入的影響等。這些問題都可以通過單...