使用 rlang 用 data.table 总结列

summarize column with data.table using rlang

我是 data.table
的新人 如何用 data.table 使用 rlang?

做同样的事情
library(tidyverse)
library(data.table)

gr <- "Species"
col <- "Petal.Length"

iris %>% 
  group_by(!!rlang::sym(gr)) %>% 
  summarise_at(vars(!!rlang::sym(col)),sum)

iris1 <- iris 
setDT(iris1)
iris1[,sum(!!rlang::sym(col)),by=!!rlang::sym(gr)]

你会使用 get:

iris1[, sum(get(col)), by = get(gr)]

正如@mmn 指出的那样,您也可以在 by 参数中跳过 get