Мне известно, что аналогичные вопросы задавались, и я попробовал несколько вариантов, но у меня все еще появляется сообщение об ошибке.
df_construction <- function(selected_month, selected_variable){
selected_variable_en <- rlang::enquo(selected_variable) #This was an attempt following the link
#filter_criteria <- interp(!is.na(~y), .values = list(y = as.name(selected_variable))) This doesn't work
df1 <- airquality %>%
dplyr::filter(Month == selected_month,
!is.na(selected_variable_en))%>%
select(Month, Day, !!selected_variable)
return(df1)}
df1 <- df_construction(2, "Solar.R")
Моя конечная цель состоит в том, чтобы построить это в Shiny и, таким образом, получить входные данные для Пользователь будет выбран в качестве аргументов в функции.
Я знаю, что функции filter
и select
не должны обрабатываться одинаково.
Я следовал шаги в соответствии с: https://www.brodrigues.co/blog/2016-07-18-data-frame-columns-as-arguments-to-dplyr-functions/, но безуспешно из-за фильтра !is.na
.
Я просто хочу иметь фрейм данных, в котором единственными столбцами являются столбец Month
для выбранные месяцы, столбец Day
и любой столбец из выбранного Ozone, Solar.R, Wind, Temp
, который выбрал пользователь, без каких-либо NA.
Большое спасибо за помощь !!