【发布时间】:2021-05-27 11:45:06
【问题描述】:
我需要根据数据框中定义的输入执行计算。请参阅下面的数据框RefDf。它有 3 列 - 列名、计算、新变量名。当Calculation列包含计数时,我们应该使用n_distinct( )函数。
RefDf <- read.table(text = "Variables Calculation NewVariable
Sepal.Length sum Sepal.Length2
Petal.Length count Petal.LengthNew
", header = T)
手动方法 - 需要通过 RefDf 中的输入实现自动化。 Species 在分组时保持不变。
library(dplyr)
iris %>% group_by_at("Species") %>%
summarise(Sepal.Length2 = sum(Sepal.Length,na.rm = T),
Petal.LengthNew = n_distinct(Petal.Length, na.rm = T)
)
我正在寻找基于 dplyr 或 base R 的解决方案
【问题讨论】: