@BenBolker这是我想要的输出示例;我不知道是否可以做到。
CURRENT_FIX_START CURRENT_FIX_END identifier trialtype rotatedimaged
targetloc prefix corrfix errfix
7 202 30 rotated stimN11of2.jpg left 231 254 0
7 208 42 rotated stimN221of2.jpg left 451 245 0
241 761 78 rotated stimW131-of2.jpg right 345 345 0
对于每个试验,如果有正确的前缀,用时间戳和正确的corrfix表示,我希望脚本在同一行上打印所有内容(我需要从前缀获取延迟度量) corrfix)。在旧数据中,时间戳出现在不同的行上。我正在考虑手动执行此操作,但这会耗费太多时间。
答案 0 :(得分:0)
未经测试,但如何:
latency <- with(mydata,abs(CURRENT_FIX_START-CURRENT_FIX_END))
for (i in c("prefix","corrfix","errfix")) {
mydata[[i]] <- ifelse(mydata[[i]]==1,latency,0)
}
答案 1 :(得分:0)
您需要调整适当的索引,但这似乎有效:
#fake data
dat <- data.frame(fix1 = runif(10), fix2 = runif(10), prefix = sample(0:1, 10, TRUE),
corfix = sample(0:1, 10, TRUE), errfix = sample(0:1, 10, TRUE))
dat[, 3:5] <- apply(dat[, 3:5], 2, function(x) ifelse(x == 1, abs(dat$fix1 - dat$fix2),x))