gpt4 book ai didi

r - 当使用 `dplyr::summarise()` 和 `across()` 函数时,我可以混合使用列表和公式语法吗

转载 作者:行者123 更新时间:2023-12-03 21:41:44 25 4
gpt4 key购买 nike

我想用 dplyr::summarise()dplyr::across()函数生成一个表,其中包含非缺失值的数量、几个变量的均值和标准差。我可以使用 purrr 建模语法获取有关缺失值和平均值的信息,但我无法弄清楚如何在不使用多个汇总调用的情况下将汇总放入单个表中,然后 bind_cols()

iris %>%
group_by(Species) %>%
summarise(across(starts_with("Sepal"), ~sum(!is.na(.))))

iris %>%
group_by(Species) %>%
summarise(across(starts_with("Sepal"), ~mean(., na.rm = TRUE)))
有没有办法组合列表语法:
iris %>%
group_by(Species) %>%
summarise(across(starts_with("Sepal"), list(mean = mean, sd = sd)))
purrr上面显示的函数语法一次获得未缺失值的数量,均值和标准差?

最佳答案

在同一个 across 中应用多个函数您可以使用 list 的声明语法为:

library(dplyr)

iris %>%
group_by(Species) %>%
summarise(across(starts_with("Sepal"), list(sum = ~sum(!is.na(.)),
mean = mean, sd = sd)))

关于r - 当使用 `dplyr::summarise()` 和 `across()` 函数时,我可以混合使用列表和公式语法吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67100650/

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