Мой фрейм данных выглядит следующим образом
source_df <-
data.frame(
id = c(seq(1: 3)),
nr = c(1.487, 2.2749, 2.9710),
cn = c("us", "uk", "ca")
)
У меня есть эта функция для столбцов выбора, и она также должна выбирать значения в десятичных разрядах в параметре round_to
selector <- function(df, colname, round_to = 1) {
df %>%
select(id, colname) %>%
mutate(colname = round(colname, round_to))
rename_at(vars(-id), ~paste0('selected_', .))
}
Если я назову это так way
selector(source_df, c("nr"))
Я получаю ошибку
Error in round(colname, round_to) :
non-numeric argument to mathematical function
Я предполагаю, что это связано с функцией mutate.