統計學習-方差分析之單因素方差分析

1、數據背景

有A、B、C、D四個地區,不同地區的銷售量不一樣,現抽取了不同時間段內每個地區的銷售量,試使用方差分析的方法解決:

1、每個地區間的銷售量是否相同?

2、不同月份的銷售量是否相同?

3、不同時間與地區的銷售量是否相同?

2、術語介紹

學習方差分析,我們首先需要知道它所說的專業性術語,如:因素、水平、協方差、因變量,自變量等。單純看定義可能會有點迷,下面我們通過一個栗子來看看這些術語具體是指什麼:

以銷售數據爲例:現有某企業的銷售數據,裏面記錄了5天內3個不同地區的銷售額(單位:百萬),數據如表1-1所示:

  2019/2/1 2019/2/3 2019/3/1 2019/4/2 2019/5/2
A地區 110 62 121 82 62
B地區 120 160 221 130 161
C地區 172 104 182 213 98

如果我們想要檢驗不同地區的銷售額是否存在顯著性差異,此時地區就是我們要檢驗的對象,稱爲因素或者因子或者自變量;A地區、B地區、C地區是這一因素的具體表現,稱爲水平或者處理;在每個地區下所得到的樣本數據(5天內的銷售額)稱爲觀測值,銷售額稱爲因變量,由於我們的觀測數相同,所以稱爲均衡設計;若觀測數不同,則稱爲非均衡設計。因爲我們只想研究不同地區的銷售額,與時間沒有關係,所以我們這裏只有一個類別型變量,所做的分析稱爲單因素方差分析

如果我們想知道地區和時間對銷售額造成的差異,那麼將兩個因素同時結合起來即可,此時稱爲雙因素方差分析。不過,這時候會多出來另外兩個術語:主效應和交互效應。所謂主效應,顧名思義就是研究多個因素對同一個因變量的影響時每一個因素所造成的效應;而交互效應就是多個因素間的交互作用對因變量所造成的影響。這裏的主效應就是地區和時間對銷售額的影響,交互效應就是地區和時間的交互作用對銷售額的影響。當設計中包含兩個或者更多的因子時,便是因素方差分析, 比如兩因子時稱爲雙因素方差分析,三因子時稱爲三因素方差分析,以此類推。

3、方差分析流程

瞭解完了術語,我們來看看方差分析的基本假定:

  • 1、每個總體都應服從正態分佈

  • 2、每個總體的方差s2必須相同

  • 3、觀測值是獨立的

什麼意思?簡單點就是說:對於不同地區的銷售額是否存在顯著性差異這個問題,我們每一個組的觀測數必須來自方差相等的正態分佈,且所有觀測數之間相互獨立。即 每個地區的銷售額必須服從方差相等的正態分佈且每一天的銷售額都與其他天數的銷售額相互獨立。至此,對於方差分析我們已經有了一個基本的概念,下面我們走一遍方差分析流程:

1)、提出假設

通過檢驗因素的k個水平均值是否相等,來判斷自變量與因變量是否相關。

H0: μ1=μ2=...=μi=...μk (自變量對因變量沒有顯著影響)

H1: μ1,μ2,....μk不全相等。(自變量對因變量有顯著影響)

2)、構造檢驗統計量

需要構造三個誤差平方和,總平方和(SST)、組間平方和(SSA)和組內平方和(SSA)。且SST=SSA+SSE SST:全部觀測值與總均值的誤差平方和,計算公式爲:

SSA:各組均值與總均值的誤差平方和,反映各樣本均值之間的差異程度。公式爲:

SSE:每個水平或組的樣本數據與其組均值的誤差平方和。公式爲:

3)、計算統計量 

各平方誤差除以它們所對應的自由度,稱爲均方誤差。SST的自由度爲n-1,其中n爲全部觀測值個數;SSA的自由度爲k-1,k爲因素水平的個數 SSE的自由度爲n-k。於是:

F = MSA/MSE服從F(k-1,n-k)分佈。

4)、統計決策

在給定顯著性水平α下,計算F(k-1,n-k)分佈的Fα,如果F>Fα(或者p<α),則拒絕原假設,表明自變量對因變量影響顯著,否則則接受原假設,認爲自變量對因變量無顯著性影響(即組間的查差異性不顯著)

4、R語言實現過程


# 1、錄入數據,計算均值進行簡單比較
y=c(110,62,121,82,62,120,160,221,130,161,172,104,182,213,98)
x=gl(3,5) 
z=data.frame(y,x)
mean(y) 
c(mean(y[x==1]),mean(y[x==2]),mean(y[x==3]))-mean(y)

 由結果可以看到α1 = -45.8 ,α2 =25.2  ,α3 =20.6,µ = 133.2,所以從參數結果可以看到甲地區的銷售額與另外兩個地區可能存在差異。

 


# 2、進行方差齊性檢驗
bartlett.test(y,x)

 

 

由結果中可知得到的p值=0.5201>0.05,所以接受原假設,認爲方差齊性

# 3、進行方差分析
fit=aov(y~x,z); 
summary(fit)

# 4、畫圖看數據
plot(x,y,xaxt = "n",xlab = "region", ylab = "sales")
axis(1,c(1,2,3),labels=c("A","B","C"))

# 5、多重比較
TukeyHSD(fit)

 

從圖中我們可以看到,在0.05的置信水平下,A地區與B地區的銷售額有顯著性差異,A地區與C地區、B地區與C地區之間並無顯著性差異。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章