如何使用dplyr重命名列,其中新列名和原始列名都是变量[duplicate]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用dplyr重命名列,其中新列名和原始列名都是变量[duplicate]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
虽然我已经尝试过,但这里很难找到这类问题。
library(dplyr)
target = "Species"
rename_data <- function(iris, target = "Species", new_target_name = "Spec3") {
iris2 <- iris %>% rename(new_target_name = target)
iris2
}
head(rename_data(iris))
Sepal.Length Sepal.Width Petal.Length Petal.Width new_target_name
1 5.1 3.5 1.4 0.2 setosa
2 4.9 3.0 1.4 0.2 setosa
3 4.7 3.2 1.3 0.2 setosa
我希望Species
重命名为Spec3
,而不是new_target_name
。
我怎样才能做到这一点?
答案
你可以像这样使用data.table
:
library(data.table)
target = "Species"
new_target_name = "Spec3"
iris2 <- setnames(iris, old=target, new =new_target_name)
head(iris2)
另一答案
提供的链接提供了对解决方案的洞察力
rename_data <- function(iris, target = "Species", new_target_name = "Spec3") {
iris2 <- iris %>% rename(!!new_target_name := target)
iris2
}
head(rename_data(iris))
以上是关于如何使用dplyr重命名列,其中新列名和原始列名都是变量[duplicate]的主要内容,如果未能解决你的问题,请参考以下文章
在 python 或 Pyspark 数据框中使用特殊字符重命名列
pandas重命名列名称数据列名称重命名(Rename Column Names): renameset_axisdf.columns