[英]Extracted variable name dplyr::mutate
我想从数据框中提取一个变量名,然后用 dplyr::mutate 创建一个新变量。 我必须写什么才能接受通过“md$meta[1]”提供的变量名? 我认为这是直截了当的,但我无法在网上找到答案。 非常感谢任何帮助!
iris <- head(iris)
meta <- c("a", "b", "c")
data <- c(1:3)
md <- data.frame(meta, data)
rm(meta, data)
iris <- iris %>%
mutate("a" = md$data[1])
iris <- iris %>%
mutate(paste0(md$meta[1]) = md$data[1])
这可以通过赋值 ( :=
) 和评估 ( !!
) 赋值的 lhs 来完成
iris %>%
mutate(!! paste0(md$meta[1]) := md$data[1])
# Sepal.Length Sepal.Width Petal.Length Petal.Width Species a
#1 5.1 3.5 1.4 0.2 setosa 1
#2 4.9 3.0 1.4 0.2 setosa 1
#3 4.7 3.2 1.3 0.2 setosa 1
#4 4.6 3.1 1.5 0.2 setosa 1
#5 5.0 3.6 1.4 0.2 setosa 1
#6 5.4 3.9 1.7 0.4 setosa 1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.