[英]dplyr filter_ not returning data
我有一個“ d”數據框,我想動態過濾。我想過濾“ g”列以觀察“ C”。 知道如何使其工作嗎?
d =data.frame(g = c("C","A"))
library(dplyr)
groups= c("g")
filter=c("C","A")
i=1
d %>% dplyr::filter_(paste0( groups[i],"==",filter[i]))
我們可以使用sym
轉換為符號並用!!
求值!!
library(dplyr)
d %>%
filter(!! rlang::sym(groups) == filter[i])
# g
#1 C
如果我們要傳遞表達式,那么使用quote
或quo
容易
g1 <- quo(g == "C")
d %>%
filter(!! g1)
# g
#1 C
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.