我正在寻找动态命名列。我需要用新名称重复变量。为什么new_sepal_length_2变量与new_sepal_length不一样?我怎样才能解决这个问题?
new_var = 'Sepal.Length'
iris %>% mutate(new_sepal_length = Sepal.Length,
new_sepal_length_2 = noquote(paste0(new_var)))
我们可以将其转换为符号(sym
)并求值(!!
)
library(dplyr)
library(stringr)
iris %>%
mutate(new_sepal_length = str_c(!!rlang::sym(new_var), collapse=", "))
或者另一种选择是利用mutate_at
其中的字符串vars
iris %>%
mutate_at(vars(new_var), list(new= ~ str_c(., collapse=", ")))
或使用 paste
iris %>%
mutate(new_sepal_length = paste(!!rlang::sym(new_var), collapse = ", "))
paste0
或paste
仅转换为character
类。也许,我们可能需要在paste
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句