所以我有一个专栏是这样读的。每年有 12 个值。这种情况从 2002 年一直持续到 2022 年。我面临的挑战是如何使它们看起来像下面这样。我该如何进行这样的转变?
col_name
2002mq1m1
2002mq1m2
2002mq1m3
2002mq2m1
2002mq2m2
2002mq2m3
......
2002mq4m3
2002m1
2002m2
2002m3
2002m4
2002m5
2002m6
.....
2002m12
2003m1
最佳答案
关键是要认识到函数关系
3 * (x - 1) + y = m
与
x = 四分之一
y = 季度 x 的月份号 y
m = 月份 [1, 12]
然后可以将其转换为 R 公式,该公式使用 x 和 y 字符串的正确元素来计算 m。
df$col_name <- paste0(
substr(df$col_name, 1, 5),
3 * (as.numeric(substr(df$col_name, 7, 7)) - 1) + as.numeric(substr(df$col_name, 9, 9))
)
关于r - 如何最好地重命名 R 中的列值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71500680/