使用 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
。
我是 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
。