gpt4 book ai didi

r - dplyr:将函数table()应用于data.frame的每一列

转载 作者:行者123 更新时间:2023-12-03 21:23:55 26 4
gpt4 key购买 nike

使用dplyr将函数table()应用于data.frame的每一列

我经常使用plyr将表函数应用于数据框的每一列,如下所示:

library(plyr)
ldply( mtcars, function(x) data.frame( table(x), prop.table( table(x) ) ) )

是否可以在dplyr中这样做?

我的尝试失败了:
mtcars %>%  do( table %>% data.frame() )
melt( mtcars ) %>% do( table %>% data.frame() )

最佳答案

您可以尝试以下不依赖tidyr包的方法。

mtcars %>% 
lapply(table) %>%
lapply(as.data.frame) %>%
Map(cbind,var = names(mtcars),.) %>%
rbind_all() %>%
group_by(var) %>%
mutate(pct = Freq / sum(Freq))

关于r - dplyr:将函数table()应用于data.frame的每一列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27659831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com