[英]Two way ANOVA - repeated measure in r, missing a desired effect
我正在嘗試使用重復測量方法進行兩因素混合方差分析。 從:
aov(Estimate ~ Dose*Visit, data = AUClast)
我得到3個平方和:手工算出的兩個主要效果(“訪問”和“劑量”)及其相互作用(“劑量:訪問”)是正確的。
Dose和Visit都是說明性變量,Dose是介於4、3、10、30、100個級別的主題變量之間,而Visit是介於2個級別1和28的主題變量(重復度量)之內。而且,subjectID變量是'動物'
我想在結果中再增加一種效果,但不知道如何。 所需的效果是劑量內動物之間的差異,或SAS如何將其置於動物(劑量)中。 SS通過以下方式計算:
sum((mean(Animal(ik))-mean(Dose(i))^2)
其中k是劑量為i的動物(對每只動物進行第1次訪問和第28次訪問的觀察估計值的平均值,然后減去該研究中所有動物劑量的平方的動物平均估計值)。
有誰知道如何相應地調整公式以包括動物(劑量)效應?
在此先感謝您的幫助,對於所有這些都不太明確的內容,我們深感抱歉。
如果我對您的理解正確,那么我有個建議。 首先,樣本數據集
#sample data
set.seed(15)
AUClast<-data.frame(
expand.grid(
Animal=1:3,
Dose=c(3,10,30,100),
Visit=c(1,28)
), Estimate=runif(24)
)
現在,我們根據要求計算交互作用項。 首先,我們將數據分為劑量組,然后對每個劑量組,從每只動物的平均值中減去總體平均值。 然后,我們將這些差異的平方求和。 最后,我們將它們擴展回使用unsplit
進行的分組。
animaldose<-unsplit(lapply(split(AUClast, AUClast$Dose), function(x) {
rep(
sum((tapply(x$Estimate, x$Animal, mean) - mean(x$Estimate))^2)
, nrow(x))
}), AUClast$Dose)
我們可以看到原始data.frame旁邊的樣子
cbind(AUClast, animaldose)
給出結果
Animal Dose Visit Estimate animaldose
1 1 3 1 0.60211404 0.1181935
2 2 3 1 0.19504393 0.1181935
3 3 3 1 0.96645873 0.1181935
4 1 10 1 0.65090553 0.1641363
5 2 10 1 0.36707189 0.1641363
6 3 10 1 0.98885921 0.1641363
7 1 30 1 0.81519341 0.0419291
8 2 30 1 0.25396837 0.0419291
9 3 30 1 0.68723085 0.0419291
10 1 100 1 0.83142902 0.1881314
11 2 100 1 0.10466936 0.1881314
12 3 100 1 0.64615091 0.1881314
13 1 3 28 0.50909039 0.1181935
14 2 3 28 0.70662857 0.1181935
15 3 3 28 0.86231366 0.1181935
16 1 10 28 0.84178515 0.1641363
17 2 10 28 0.44744372 0.1641363
18 3 10 28 0.96466695 0.1641363
19 1 30 28 0.14118707 0.0419291
20 2 30 28 0.77671251 0.0419291
21 3 30 28 0.80372740 0.0419291
22 1 100 28 0.79334595 0.1881314
23 2 100 28 0.35756312 0.1881314
24 3 100 28 0.05800106 0.1881314
這樣您就可以看到每個工作組都有自己的調整。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.