需要使用一个数据集中的文本值作为 R 中另一数据集的变量标签

问题描述 投票:0回答:1

我有两个数据集。数据集 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 中实现此目标。任何建议将不胜感激。

r label
1个回答
0
投票

如果您是 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()
在重命名时强制严格。但根据您的具体用例和刚性,您可以修改它。

干杯

© www.soinside.com 2019 - 2024. All rights reserved.