2012-11-27 36 views
6

Tôi hiểu sự tương phản từ các bài viết trước và tôi nghĩ rằng tôi đang làm điều đúng nhưng nó không mang lại cho tôi những gì tôi mong đợi.tương phản trong anova

x <- c(11.80856, 11.89269, 11.42944, 12.03155, 10.40744, 
     12.48229, 12.1188, 11.76914, 0, 0, 
     13.65773, 13.83269, 13.2401, 14.54421, 13.40312) 
type <- factor(c(rep("g",5),rep("i",5),rep("t",5))) 
type 
[1] g g g g g i i i i i t t t t t 
Levels: g i t 

Khi tôi chạy này:

> summary.lm(aov(x ~ type)) 

Call: 
aov(formula = x ~ type) 

Residuals: 
    Min  1Q Median  3Q  Max 
-7.2740 -0.4140 0.0971 0.6631 5.2082 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|)  
(Intercept) 11.514  1.729 6.659 2.33e-05 *** 
typei   -4.240  2.445 -1.734 0.109  
typet   2.222  2.445 0.909 0.381  
--- 
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 3.866 on 12 degrees of freedom 
Multiple R-squared: 0.3753,  Adjusted R-squared: 0.2712 
F-statistic: 3.605 on 2 and 12 DF, p-value: 0.05943 

đây tham khảo của tôi là mẫu người của tôi "g", vì vậy tôi typei là sự khác biệt giữa gõ "g" và gõ "i", và typet của tôi là sự khác biệt giữa loại "g" và loại "t".

Tôi muốn nhìn thấy thêm hai sự tương phản ở đây, sự khác biệt giữa typei+typeg và gõ "t" và sự khác biệt giữa các loại "i" và gõ "t"

nên sự tương phản

> contrasts(type) <- cbind(c(-1,-1,2),c(0,-1,1)) 
> summary.lm(aov(x~type)) 

Call: 
aov(formula = x ~ type) 

Residuals: 
    Min  1Q Median  3Q  Max 
-7.2740 -0.4140 0.0971 0.6631 5.2082 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|)  
(Intercept) 10.8412  0.9983 10.860 1.46e-07 *** 
type1  -0.6728  1.4118 -0.477 0.642  
type2   4.2399  2.4453 1.734 0.109  
--- 
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 3.866 on 12 degrees of freedom 
Multiple R-squared: 0.3753,  Adjusted R-squared: 0.2712 
F-statistic: 3.605 on 2 and 12 DF, p-value: 0.05943 

Khi tôi cố gắng làm tương phản thứ hai bằng cách thay đổi tham chiếu của tôi, tôi nhận được kết quả khác nhau. Tôi không hiểu những gì sai với sự tương phản của tôi.

+4

Nơi phù hợp với câu hỏi thống kê là http://stats.stackexchange.com/. –

Trả lời

7

refence: http://www.ats.ucla.edu/stat/r/library/contrast_coding.htm

mat <- cbind(rep(1/3, 3), "g+i vs t"=c(-1/2, -1/2, 1),"i vs t"=c(0, -1, 1)) 
mymat <- solve(t(mat)) 
my.contrast <- mymat[,2:3] 
contrasts(type) <- my.contrast 
summary.lm(aov(x ~ type)) 

my.contrast 
>  g+i vs t i vs t 
[1,] -1.3333  1 
[2,] 0.6667  -1 
[3,] 0.6667  0 
> contrasts(type) <- my.contrast 
> summary.lm(aov(x ~ type)) 

Call: 
aov(formula = x ~ type) 

Residuals: 
    Min  1Q Median  3Q Max 
-7.274 -0.414 0.097 0.663 5.208 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|)  
(Intercept) 10.841  0.998 10.86 1.5e-07 *** 
typeg+i vs t 4.342  2.118 2.05 0.063 . 
typei vs t  6.462  2.445 2.64 0.021 * 
--- 
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

Residual standard error: 3.87 on 12 degrees of freedom 
Multiple R-squared: 0.375, Adjusted R-squared: 0.271 
F-statistic: 3.6 on 2 and 12 DF, p-value: 0.0594 
+0

Cảm ơn @liuminzhao. Liên kết không còn có sẵn nữa. Tôi thấy rằng nhiều người trình bày chủ đề này một cách khác nhau. Một số có và một số không có bước giải quyết ma trận. Bạn có thể giới thiệu một nguồn tài nguyên tốt, nơi điều này được giải thích vì liên kết này không còn hoạt động nữa. – Jaynes01

+1

@ Jaynes01 Tôi tìm thấy một [liên kết] khác (https://rstudio-pubs-static.s3.amazonaws.com/65059_586f394d8eb84f84b1baaf56ffb6b47f.html). Phần kiểm tra * Tương phản DIY *. Hy vọng rằng sẽ giúp. Tóm lại, nó phụ thuộc vào sự tương phản là trực giao hay không. Làm nghịch đảo an toàn hơn cho hàm tương phản trong R. – liuminzhao

Các vấn đề liên quan