我正在尝试编写一个函数,该函数将重命名R中数据表内多个列的变量。
我的数据表的结构类似于:
| 功能1|功能2|特辑3|功能4|
| - ------|- ------|- ------|- ------|
| 变量_a|变量_c|变量_b|变量_a|
| 变量_b|变量_a|变量_a|变量_c|
| 变量_c|变量_b|变量_c|变量_b|
我正在尝试将所有变量重命名为新名称。其中一些变量在feature1中用于一个项目,但在feature4中用于另一个项目,但命名在整个数据框中是相同的。
| 功能1|功能2|特辑3|功能4|
| - ------|- ------|- ------|- ------|
| 新的_a|新的_c|新_b|新的_a|
| 新_b|新的_a|新的_a|新的_c|
| 新的_c|新_b|新的_c|新_b|
我只是在编写自己的用户定义函数时遇到了麻烦,因为它比标准的dat$feature1\[dat$feature1 == 'var_a'\] \*\<- '\*new_a'
代码行要少。
最好是,我想传递一些类似function(dat, var_a, new_a)
的东西,或者我可以传递一个新旧变量的列表。
任何帮助都将不胜感激。谢谢!
4条答案
按热度按时间6mw9ycah1#
以R为基数:
输出:
数据
ldfqzlk82#
这是一个接受 Dataframe 、旧字符串及其替换的函数。
a64a0gku3#
使用此示例数据:
mlmc2os54#
使用
dplyr
和across