使用以下代码对该数据集进行统计学检验:
# DF1
Name <- c("Sam", "Anna", "Anna", "Sam", "Anna")
Companies <- c(23, 21, 22, 24, 45)
Store <- c(10, 8, 5, 5, 6)
Cars <- c(10, 7, 5, 6, 7)
Home <- c(8, 4, 5, 8, 4)
DF1 <- data.frame(Name, Companies, Store, Cars, Home)
DF1$Name <- as.factor(DF1$Name)
Z <- lapply(DF1[-1], function(x){
wilcox.test(x ~ DF1$Name)
})
现在在Z中,每个列名都有一个列表中的列表。例如,当我查看数据框Z并单击Companies时,我看到statistic和null.value。我尝试取消它们的列表,以便根据它们所属的特定组将它们放在单独的列中(如下所示)。我使用的代码是这样的,但这不是我要找的,并且在网上找不到任何其他代码。
Z_unlisted <- as.data.frame(unlist(Z))
我不知道为什么我真的对此感到困惑,因为我觉得使用unlist()应该很简单,但是所有的列表都扩展到一列,而不是单独的列。
如何取消列出所有这些类别,使每个类别(统计、参数、p值等)都在列中,而分组(公司、商店、汽车和家庭)在一列中?示例如下所示:(其中每列都是列表的一部分)
Companies 2 0.8 Wilcoxon rank sum exact test two.sided
Store 2.5 1 Wilcoxon rank sum test with continuity correction two.sided
Cars 2 0.767 Wilcoxon rank sum test with continuity correction two.sided
Home 0 0.128 Wilcoxon rank sum test with continuity correction two.sided
2条答案
按热度按时间kx7yvsdv1#
与其在整个列表中执行
unlist
,不如在和rbind
中执行pgky5nke2#
使用扫帚中的tidy并使用purrr中的map_dfr应用它:
给予