R'de üç yönlü anova nasıl gerçekleştirilir
Üç faktöre dağılmış üç veya daha fazla bağımsız grubun ortalamaları arasında istatistiksel olarak anlamlı bir fark olup olmadığını belirlemek için üç yönlü ANOVA kullanılır.
Aşağıdaki örnek, R’de üç yönlü bir ANOVA’nın nasıl gerçekleştirileceğini gösterir.
Örnek: R’de üç yönlü ANOVA
Bir araştırmacının, iki antrenman programının kolej basketbolcuları arasında sıçrama yüksekliğinde farklı ortalama iyileşmelere yol açıp açmadığını belirlemek istediğini varsayalım.
Araştırmacı, cinsiyet ve bölünmenin (Bölüm I veya II) de atlama yüksekliğini etkileyebileceğinden şüpheleniyor, bu nedenle bu faktörler hakkında da veri topluyor.
Amacı, antrenman programının, cinsiyetin ve bölümün atlama yüksekliğini nasıl etkilediğini belirlemek için üç yönlü bir ANOVA gerçekleştirmektir.
R’de bu üç yönlü ANOVA’yı gerçekleştirmek için aşağıdaki adımları izleyin:
1. Adım: Verileri oluşturun
Öncelikle verileri tutacak bir veri çerçevesi oluşturalım:
#create dataset df <- data. frame (program=rep(c(1, 2), each= 20 ), gender=rep(c(' M ', ' F '), each= 10 , times= 2 ), division=rep(c(1, 2), each= 5 , times= 4 ), height=c(7, 7, 8, 8, 7, 6, 6, 5, 6, 5, 5, 5, 4, 5, 4, 3, 3, 4, 3, 3, 6, 6, 5, 4, 5, 4, 5, 4, 4, 3, 2, 2, 1, 4, 4, 2, 1, 1, 2, 1)) #view first six rows of dataset head(df) program gender division height 1 1 M 1 7 2 1 M 1 7 3 1 M 1 8 4 1 M 1 8 5 1 M 1 7 6 1 M 2 6
2. Adım: Açıklayıcı istatistikleri görüntüleyin
Üç yönlü ANOVA’yı gerçekleştirmeden önce, antrenman programı, cinsiyet ve bölüme göre gruplandırılmış ortalama atlama yüksekliği artışını hızlı bir şekilde özetlemek için dplyr’i kullanabiliriz:
library (dplyr) #calculate mean jumping height increase grouped by program, gender, and division df %>% group_by(program, gender, division) %>% summarize(mean_height = mean(height)) # A tibble: 8 x 4 # Groups: program, gender [4] program gender division mean_height 1 1 F 1 4.6 2 1 F 2 3.2 3 1 M 1 7.4 4 1 M 2 5.6 5 2 F 1 2.6 6 2 F 2 1.4 7 2 M 1 5.2 8 2 M 2 4
Sonucun nasıl yorumlanacağı aşağıda açıklanmıştır:
- Eğitim Programı 1’i kullanan Bölüm I kadınlarının atlama yüksekliğindeki ortalama artış 4,6 inçti .
- Eğitim Programı 1’i kullanan Bölüm II kadınları arasında atlama yüksekliğindeki ortalama artış 3,2 inçti .
- Eğitim Programı 1’i kullanan Bölüm I erkekleri arasında atlama yüksekliğindeki ortalama artış 7,4 inçti .
Ve benzeri.
3. Adım: Üç yönlü ANOVA’yı gerçekleştirin
Daha sonra, üç yönlü ANOVA’yı gerçekleştirmek için aov() fonksiyonunu kullanabiliriz:
#perform three-way ANOVA model <- aov(height ~ program * gender * division, data=df) #view summary of three-way ANOVA summary(model) Df Sum Sq Mean Sq F value Pr(>F) program 1 36.1 36.10 65.636 2.98e-09 *** gender 1 67.6 67.60 122.909 1.71e-12 *** division 1 19.6 19.60 35.636 1.19e-06 *** program:gender 1 0.0 0.00 0.000 1.000 program:division 1 0.4 0.40 0.727 0.400 gender:division 1 0.1 0.10 0.182 0.673 program:gender:division 1 0.1 0.10 0.182 0.673 Residuals 32 17.6 0.55 --- Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Pr(>F) sütunu, her bir faktör için p-değerini ve faktörler arasındaki etkileşimleri görüntüler.
Sonuçlardan, üç faktör arasındaki etkileşimlerin hiçbirinin istatistiksel olarak anlamlı olmadığını görebiliriz.
Ayrıca üç faktörün (program, cinsiyet ve bölüm) her birinin istatistiksel olarak anlamlı olduğunu da görebiliyoruz.
Artık program, cinsiyet ve bölüm için ortalama atlama yüksekliği artışını ayrı ayrı bulmak için dplyr’i tekrar kullanabiliriz:
library (dplyr) #find mean jumping increase by program df %>% group_by(program) %>% summarize(mean_height = mean(height)) # A tibble: 2 x 2 program mean_height 1 1 5.2 2 2 3.3 #find mean jumping increase by gender df %>% group_by(gender) %>% summarize(mean_height = mean(height)) # A tibble: 2 x 2 gender mean_height 1 F 2.95 2M 5.55 #find mean jumping increase by division df %>% group_by(division) %>% summarize(mean_height = mean(height)) # A tibble: 2 x 2 division mean_height 1 1 4.95 2 2 3.55
Sonuçtan şunları gözlemleyebiliriz:
- Antrenman programı 1’i kullanan kişilerin atlama yüksekliğindeki ortalama artış ( 5,2 inç ), antrenman programı 2’yi kullanan kişilerin ortalama artışından (3,3 inç ) daha fazlaydı.
- Erkeklerin atlama yüksekliğindeki ortalama artış ( 5,55 inç ), kadınların ortalama artışından (2,95 inç ) daha fazlaydı.
- Klasman 1 oyuncularının atlama yüksekliğindeki ortalama artış ( 4,95 inç ), Klasman 2 oyuncuları arasındaki ortalama artıştan (3,55 inç ) daha fazlaydı.
Sonuç olarak, antrenman programı, cinsiyet ve bölümün, oyunculardaki artan sıçrama yüksekliğinin önemli göstergeleri olduğunu söyleyebiliriz.
Ayrıca bu üç faktör arasında anlamlı bir etkileşim etkisinin olmadığını da söyleyebiliriz.
Ek kaynaklar
Aşağıdaki eğitimlerde diğer ANOVA modellerinin R’ye nasıl sığdırılacağı açıklanmaktadır:
R’de tek yönlü ANOVA nasıl gerçekleştirilir
R’de iki yönlü ANOVA nasıl gerçekleştirilir