我有两个数据集。数据集 A 有两列,如下所示。
[数据集A]
obs | col1 | col2 |
---|---|---|
1 | dem_it1 | 年龄 |
2 | dem_it2 | 性别 |
3 | dem_it3 | 比赛 |
数据集 B 具有数据集 A 中第 1 列的值,如下所示。
[数据集B]
obs | dem_it1 | dem_it2 | dem_it3 |
---|---|---|---|
1 | xxx | xxx | xxx |
2 | xxx | xxx | xxx |
3 | xxx | xxx | xxx |
目标是用数据集 A 中的第 2 列的值来标记数据集 B 中的列。我不知道如何在 R 中实现此目标。任何建议将不胜感激。
如果您是 tidyverse 软件包的用户,特别是 dplyr,您可以执行以下操作...
library(dplyr)
#Create a named vector of old names, and new names.
name_vector <- A %>% pull(col1)
names(name_vector) <- A %>% pull(col2)
rename(B, all_of(name_vector))
整齐的选择
all_of()
在重命名时强制严格。但根据您的具体用例和刚性,您可以修改它。
干杯