我有一个数据框
bbb <- as.data.frame(list(X1 = c(19, 12, 6, 17, 8, 14, 19, 22, 20, 21, 23, 19),
X2 = c(12, 6, 11, 9, 9, 9, 19, 18, 21, 22, 21, 23),
X3 = c(19, 12, 13, 13, 12, 5, 23, 19, 14, 19, 20, 20),
X4 = c(12, 12, 12, 16, 9, 10, 21, 19, 19, 21, 16, 21),
X5 = c(12, 10, 7, 6, 11, 10, 15, 20, 24, 19, 19, 24),
cluster = c(1,1,1,1,1,1,2,2,2,2,2,2)))
我想用方差分析从每一列得到p值。我可以一个接一个地做,但我怎么能在循环中做呢?aov不理解来自colnames(bbb)
的数据
summary(aov(X1 ~ cluster, data = bbb))[[1]]$'Pr(>F)'[1]
我需要迭代我的dataframe并将p值提取到向量中
2条答案
按热度按时间vlf7wbxs1#
一种选择是使用purrr package(tidyverse的一部分)中的
map()
函数,例如:创建于2023-05-25带有reprex v2.0.2
这将以列表的形式输出结果,但是您可以
unlist()
结果,或者根据需要将它们强制到 Dataframe 中laawzig22#