R列中的循环测试

问题描述 投票:0回答:2

我有一个数字变量和几个二进制变量。我想为每个二进制变量循环一个ttest。

使用中

library(boot)
df <- nuclear

两者

  t.test(df$cost, df[6])

  t.test(df$cost, df$pr)

给我相同的结果。但是,如果要循环播放,我将执行以下操作:

for(i in 6:9) {
  t.test(df$cost, df[i])
}

然后不提供任何输出。

如何在这里获得结果以及为什么该输出被抑制?

r loops for-loop t-test
2个回答
1
投票

使用lapply的解决方案:

library(boot)

df <- nuclear 


list_of_ttests <- lapply(6:9, function(i){
    t.test(df[,1], df[,i])
})

这将生成t检验的列表并将其保存到列表中。


0
投票

如果仅是缺少的输出,则只需添加print

library(boot)
df <- nuclear
for(i in 6:9) {
  print(t.test(df$cost, df[i]))
}
© www.soinside.com 2019 - 2024. All rights reserved.