2016-12-15 6 views
0

Я делаю простой ANOVA в R, показанный ниже.Почему Excel и R дают разные выходы ANOVA?

x1 <- c(180,45,45,200,65,150,380,250,0,0,320,100,80,0,280,20,60,300,210,0,20,0,0,260,220) 
x2 <- c(0,100,120,0,40,200,20,240,80,420,0,0,0,220,160,40,180,0,0,40,0,20,100,0,120) 
dat = data.frame(cbind(x1,x2)) 
colnames(dat) <- c("Column1","Column2") 
dat$Column2<-as.factor(dat$Column2) 
anova(lm(Column1~Column2,data=dat)) 

Это выход, который я получаю.

Analysis of Variance Table 

Response: Column1 
      Df Sum Sq Mean Sq F value Pr(>F) 
Column2 11 181842 16531 1.2339 0.3548 
Residuals 13 174164 13397    

Однако, когда я выполняю ту же ANOVA в Excel с помощью "ANOVA: Single Factor" Я получаю следующие результаты.

enter image description here

+0

Вы не сделали тот же анализ. В анализе R у вас есть 25 наблюдений в 12 группах. В вашем анализе Excel у вас есть 50 наблюдений в двух группах. Какой из этих анализов вы намеревались? – Benjamin

+0

Вы не сравниваете как с подобным - для получения того же результата в R вам нужно сделать что-то вроде: 'test <- data.frame (value = c (x1, x2), group = rep (1: 2, c (длина (x1), длина (х2)))); anova (lm (значение ~ group, data = test)) ' – thelatemail

ответ

2

Вы должны иметь набор данных, где два столбца значения и группы:

> dat <- stack(data.frame(x1,x2)) 
> colnames(dat) <- c("Column1","Column2") 
> dat$Column2<-as.factor(dat$Column2) 
> anova(lm(Column1~Column2,data=dat)) 
Analysis of Variance Table 

Response: Column1 
      Df Sum Sq Mean Sq F value Pr(>F) 
Column2 1 23545 23544 1.8204 0.1836 
Residuals 48 620806 12934   
Смежные вопросы