Bu biraz kendini terbiye gibi görünebilir (ve sanırım öyledir). Ancak , tam olarak bu tür bir durumla başa çıkabilecek şekilde tasarlanan R için bir CRS paketi hazırladım. Örnek için nasıl çalıştığını İşte:
> sample.data <- data.frame(IV=rep(1:4,each=20),DV=rep(c(-3,-3,1,3),each=20)+rnorm(80))
> sample.aov <- aov(DV ~ factor(IV), data = sample.data)
> library("lsmeans")
> (sample.lsm <- lsmeans(sample.aov, "IV"))
IV lsmean SE df lower.CL upper.CL
1 -3.009669 0.2237448 76 -3.4552957 -2.564043
2 -3.046072 0.2237448 76 -3.4916980 -2.600445
3 1.147080 0.2237448 76 0.7014539 1.592707
4 3.049153 0.2237448 76 2.6035264 3.494779
> contrast(sample.lsm, list(mycon = c(-3,-1,1,3)))
contrast estimate SE df t.ratio p.value
mycon 22.36962 1.000617 76 22.356 <.0001
İsterseniz listede ek kontrastlar belirleyebilirsiniz. Bu örnekte, yerleşik doğrusal polinom kontrastıyla aynı sonuçları elde edersiniz:
> con <- contrast(sample.lsm, "poly")
> con
contrast estimate SE df t.ratio p.value
linear 22.369618 1.0006172 76 22.356 <.0001
quadratic 1.938475 0.4474896 76 4.332 <.0001
cubic -6.520633 1.0006172 76 -6.517 <.0001
Bunu onaylamak için, "poly"
belirtimin poly.lsmc
, bu sonuçları üreten, aramaya yönlendirdiğini unutmayın :
> poly.lsmc(1:4)
linear quadratic cubic
1 -3 1 -1
2 -1 -1 3
3 1 -1 -3
4 3 1 1
Birkaç kontrastın ortak testini yapmak istiyorsanız, test
işlevi kullanın joint = TRUE
. Örneğin,
> test(con, joint = TRUE)
Bu bir "tip III" testi üretecektir. Aksine car::Anova()
, model montaj aşamasında kullanılan kontrast kodlamasına bakılmaksızın doğru şekilde yapacaktır. Bunun nedeni, test edilen doğrusal işlevlerin dolaylı olarak model indirgeme yoluyla doğrudan belirtilmeleridir. Ek bir özellik, test edilen kontrastların lineer olarak bağımlı olduğu bir durumun tespit edilmesi ve doğru test istatistiğinin ve serbestlik derecelerinin üretilmesidir.