一元配置分散分析と二元配置分散分析のコードの例です。UCLAのページが参考になります。
CHOOSING THE CORRECT STATISTICAL TEST IN SAS, STATA, SPSS AND R http://www.ats.ucla.edu/stat/mult_pkg/whatstat/
コードの紹介
理論は他のサイトを参考にしてください。下記コードでSPSSと同じ結果を算出することができます。
#一元配置分散分析 hsb2 <- read.table("https://stats.oarc.ucla.edu/stat/data/hsb2.csv", sep = ",", header = T) library(car) Anova(lm(write ~ factor(ses), data = hsb2), type = 2) #Anova Table (Type II tests) #Response: write #Sum Sq Df F value Pr(>F) #factor(ses) 858.7 2 4.9696 0.007842 ** # Residuals 17020.2 197 #--- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 summary(aov(lm(write ~ factor(ses), data = hsb2))) #Df Sum Sq Mean Sq F value Pr(>F) #factor(ses) 2 859 429.4 4.97 0.00784 ** # Residuals 197 17020 86.4 #--- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 ######################################## #二元配置分散分析 exer <- read.csv("https://stats.oarc.ucla.edu/stat/data/exer.csv") exer <- within(exer, { diet <- factor(diet) exertype <- factor(exertype) time <- factor(time) id <- factor(id) }) exertype.aov <- aov(pulse ~ exertype * time + Error(id), data = exer) summary(exertype.aov) #Error: id #Df Sum Sq Mean Sq F value Pr(>F) #exertype 2 8326 4163 27 3.62e-07 *** # Residuals 27 4163 154 #--- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 #Error: Within #Df Sum Sq Mean Sq F value Pr(>F) #time 2 2067 1033.3 23.54 4.45e-08 *** # exertype:time 4 2723 680.8 15.51 1.65e-08 *** # Residuals 54 2370 43.9 #--- # Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
少しでも、あなたのウェブや実験の解析が楽になりますように!!