【发布时间】:2020-07-14 13:36:16
【问题描述】:
我有一组个人在不同温度下反复执行的行为的数据集,例如:
ID Test Behaviour Temperature
A12.4.2 ONE 8.64 4
A12.4.2 TWO 7.63 5
A6.3.3 ONE 1.81 3
A6.3.3 TWO 2.47 9
B12.4.1 ONE 1.17 12
B12.4.1 TWO 3.96 2
E9.4.2 ONE 13.04 13
E9.4.2 TWO 9.51 6
...
我使用以下代码对该数据集进行随机子集化,然后对子集运行可重复性分析,最后从可重复性分析中生成 R 值和 CI 值。
P<-10000
R_value<-numeric(length=P)
CI_value<-numeric(length=P)
for(i in 1:P){
newdata<-Data[Data$ID %in% sample(unique(Data$ID), 16), ]
m1<-rptR::rpt(((Behaviour))~Temperature+(1|ID),grname="ID",data=newdata,datatype="Gaussian",nboot=1000,npermut=1000)
R_value[i] <- m1$R
CI_value[i] <- m1$CI
}
不幸的是,这似乎不起作用。当我打电话给R_value 或CI_value 时,我会收到一串0。在调用newdata 或m1 时,R 告诉我找不到对象。
我在 for 循环之外运行可重复性分析,结果一切正常。
谁能帮忙?
【问题讨论】:
-
Data看起来像什么?此外,这看起来像是几个小时前您的问题的重复......?! -
这能回答你的问题吗? Storing multiple results from for loop
-
嗨 Wimpel,我的问题与几个小时前发布的问题不同,因为我已经尝试了建议给我的代码,虽然它解决了我的一些问题,但我遇到了这个代码的新问题.
-
Lizzie,最好采用循环中的代码,而不是运行循环,设置
i <- 1。现在运行每一行代码,看看是否得到newdata和m1的预期结果 -
嗨,艾伦,按照您的建议,我确实得到了预期的结果。