首页 > 解决方案 > 在 dplyr 中替代 Sapply

问题描述

我想知道我们如何在 dplyr 中编写类似于 sapply 的代码。在这里我计算没有。不同的价值观。我有类似的多个 sapply 语句,所以我想mutate在 dplyr 中使用。

distinctValues <- sapply(iris, function(var) dplyr::n_distinct(var))

标签: rdplyr

解决方案


更新:您可以使用不同的名称.names = "{.col}.new{.fn}"

iris %>% 
  summarize(across(everything(), n_distinct, .names = "{.col}.new{.fn}"))

我们可以summarize使用across

library(dplyr)
iris %>% 
  summarize(across(everything(), n_distinct))

输出:

  Sepal.Length Sepal.Width Petal.Length Petal.Width Species
1           35          23           43          22       3

推荐阅读