【发布时间】:2020-11-20 22:30:37
【问题描述】:
我将数据从调查软件导出到 R 中,列名的格式为 Qx_y,其中 x 是部分,y em> 是该部分中的问题编号。我想以 XY 的形式重命名列,其中 X 是每个部分对应的名称 (1=A, 2=B...) 和 Y 是与每个问题编号对应的名称(例如 topleft = 1、topright = 2 等)。因此,Q1_1 将变为 A.topleft,Q1_2 将变为 A.topright。
从搜索线程看来,我可能需要 paste0 和 regex 命令的组合。这是一些示例数据和两个名称列表:
Q1_1 = c(1:3)
Q1_2 = c(1:3)
Q1_3 = c(1:3)
Q1_4 = c(1:3)
Q2_1 = c(1:3)
Q2_2 = c(1:3)
Q2_3 = c(1:3)
Q2_4 = c(1:3)
Q3_1 = c(1:3)
Q3_2 = c(1:3)
Q3_3 = c(1:3)
Q3_4 = c(1:3)
df <- data.frame(Q1_1,Q1_2,Q1_3,Q1_4,Q2_1,Q2_2,Q2_3,Q2_4,Q3_1,Q3_2,Q3_3,Q3_4)
sections = ("A","B","C")
questions = ("topleft","topright","bottomleft","bottomright")
(可能有一种更简单的方法来指定这些数据,但我是 R 新手。)如何重命名我的所有列?
【问题讨论】: