我在R(数据)中有一个列表,其中包含列表[[1]] .... list [[6]],我想在每个列表中应用t.test 我这样做但它对我没用:
ttest <- for(i in 1:length(data)){
var1 <- data[[i]][5:6]
var2<- data[[i]][7:8]
t <- t.test(var1,var2)
}
ttest
有人能让我知道如何将其作为循环吗?
答案 0 :(得分:0)
你可以尝试
lapply(data, function(x) t.test(x[5:6], x[7:8]))
或者通过将结果分配到列表来修改for
循环&#39; t1&#39;
t1 <- vector('list', length(data))
for(i in 1:length(data)){
var1 <- data[[i]][5:6]
var2<- data[[i]][7:8]
t1[[i]] <- t.test(var1,var2)
}
t1
set.seed(24)
data <- lapply(1:3, function(i) as.data.frame(matrix(sample(0:9,
20*10, replace=TRUE), ncol=10)))