Функции переименования dplyr требуют, чтобы новое имя столбца было передано как имена некотируемых переменных. Однако у меня есть функция, в которой имя столбца создается путем вставки строки в переданный аргумент и, следовательно, является символьной строкой.
Например, у меня была эта функция
myFunc <- function(df, col){
new <- paste0(col, '_1')
out <- dplyr::rename(df, new = old)
return(out)
}
Если я запустил этот
df <- data.frame(a = 1:3, old = 4:6)
myFunc(df, 'x')
Я получаю
a new
1 1 4
2 2 5
3 3 6
В то время как я хочу, чтобы "новый" столбец был именем строки, которую я построил ( "x_1" ), т.е.
a x_1
1 1 4
2 2 5
3 3 6
Есть ли способ сделать это?