Я хотел бы присвоить динамическое c имя, то есть имя переменной, которую я передаю функции, в качестве имени столбца в кадре данных, который создается функцией.
Я пробовал
- deparse(substitute(x))
- toString(x)
, но безуспешно ...
Код
a <- (1:3)
b <- (5:7)
df <- data.frame(a,b)
fun <- function(x){
x %>% mutate(c=a+b)
colnames(x)[3] <- deparse(substitute(x))
}
Ожидаемое поведение
после запуска fun (df):
a b df
1 1 5 6
2 2 6 8
3 3 7 10
вместо:
> fun(df)
Error in names(x) <- value :
'names' attribute [3] must be the same length as the vector [2]