我有一个数据框 90 个观察值和 124306 个变量,名为 KWR 所有数字数据。我想在组之间的每一列中运行 Kruskal Wallis 分析。我在名为“Group”的变量后面添加了一个带有每个不同组的向量。为了测试准确性,我使用以下代码测试了一种肽(名为 x2461):
kruskal.test(X2461 ~ Group, data = KWR)
结果很好,立即给了我一个结果。但是,我需要分析所有变量。我在阅读这篇文章时使用了 lapply:How to loop Bartlett test and Kruskal tests for multiple columns in a dataframe?
cols <- names(KWR)[1:124306]
allKWR <- lapply(cols, function(x) kruskal.test(reformulate("Group", x), data = KWR))
然而,在 R 不停地工作 2 小时后,我辞掉了这份工作。有没有更有效的方法来做到这一点?
提前致谢。
注意:第一次发帖,R 初学者