Я ищу способ объединить запрос и строку, результатом которой является запрос. На самом деле, если я использую paste0()
и quo_name()
, я могу это сделать. Но мне интересно, есть ли более элегантная альтернатива написанию функции в моем пакете. Это общий пример:
library(dplyr)
df <- data_frame(
z_1 = 1,
z_2 = 2,
y_1 = 10,
y_2 = 20
)
get_var <- function(.data, var) {
xx = enquo(var)
select(.data, paste0(quo_name(xx), "_1"), paste0(quo_name(xx), "_2"))
}
get_var(df, z)
# A tibble: 1 x 2
z_1 z_2
<dbl> <dbl>
1 1 2