0

私の質問は、小さなコードで最もよく理解できると思います。

#Load data
b <- structure(list(s1 = c(18.5, 24, 17.2, 19.9, 18), s2 = c(26.3, 
     25.3, 24, 21.2, 24.5), s3 = c(20.6, 25.2, 20.8, 24.7, 22.9), 
     s4 = c(25.5, 19.9, 22.6, 17.5, 20.4)), .Names = c("s1", "s2", 
     "s3", "s4"), row.names = c(NA, -5L), class = "data.frame")

# Model A
# One way (the wrong way) to test wether s1,s2,s3,s4 differs:
summary(aov(s1~s2+s3+s4, data=b))
# R does not complain here - but I don't know what I am doing. I guess I am trying
# to explain the variance in s1, with the variable s2,s3 and s4.
# I am not sure how this actually is different from a proper anova (see below).
# Also I dont understand why the Sum of Squares for s3 is much larger than the sum of    
# squares for s2 and s4.

# Model B
# The correct way to do it (requires reshape)
# install.packages('reshape')
# library(reshape)

summary(aov(value ~variable, data=melt(b)))
# This is correct - I am here testing variation within the factors of 'variable',
# to explain variation in 'value'.
# Doing 
TukeyHSD(aov(value ~variable, data=melt(b)))
# shows me that s1 is significantly different from s2.
# My way of thinking is that this result should be evident from "model A"
# What does Sum of Squares in model A mean? - why is it so big for s3?

上記のコードのコメントからのように:私はモデルAが間違っている方法と理由の説明を求めています。

4

1 に答える 1

2

モデル A は ANOVA ではありません。s2、s3、および s4 を予測子として使用して、1 つの応答変数 (s1) をモデル化しています。これが共分散分析です。s3 でこれほど大きい理由は、相関行列をプロットすると明らかになります。cor( b )あなたに見せます

            s1          s2         s3         s4
s1  1.00000000  0.08009315  0.7929146 -0.4200527
s2  0.08009315  1.00000000 -0.4433499  0.7846037
s3  0.79291464 -0.44334985  1.0000000 -0.8725241
s4 -0.42005268  0.78460371 -0.8725241  1.0000000

s1 を応答変数ではなく予測子として扱い、応答変数がクラス (s1、s2、s3、または s4) であるモデル B と比較することはできません。

于 2012-11-11T10:49:32.493 に答える