【发布时间】:2022-01-16 10:23:09
【问题描述】:
我有两个数据框,我需要根据column_map 替换第一个数据集的列名,该column_map 描述了替换列名的映射。
这是我的示例数据集的样子。
dat.1 <- data.frame(column_1 = c(1:5),
column_2 = c(1:5),
column_3 = c(1:5),
column_4 = c(1:5))
> dat.1
column_1 column_2 column_3 column_4
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
dat.2 <- data.frame(column_1a = c(1:5),
column_2b = c(1:5),
column_3c = c(1:5))
> dat.2
column_1a column_2b column_3c
1 1 1 1
2 2 2 2
3 3 3 3
4 4 4 4
5 5 5 5
column_map <- data.frame(name.1 = c("column_1", "column_2", "column_3"),
name.2 = c("column_1a", "column_2b", "column_3c"))
> column_map
name.1 name.2
1 column_1 column_1a
2 column_2 column_2b
3 column_3 column_3c
所以比如我需要根据column_map把dat.1中的column_1切换成column_1a等等。
编辑:我想保持第四列 column_4 不变,因为它没有被映射(在第二个数据集中没有等价性)。
期望的输出是:
> dat.1
column_1a column_2b column_3c column_4
1 1 1 1 1
2 2 2 2 2
3 3 3 3 3
4 4 4 4 4
5 5 5 5 5
感谢您对此进行调查!
【问题讨论】: