我正在尝试使用R 中的pivot_longer()转换表。但分隔不是由任何常见符号,例如“_”或“。”。而是通过列名的结尾方式(“B”或“T”)。我尝试使用正则表达式,但没有太大成功。
下面是示例原始表以及我希望最终转换后的表如何。非常感谢您的帮助。
原表:
tibble(Datetime = seq(as.Date("2000/1/1"), by = "month", length.out = 10),
`ABC1-P1B` = seq(1,10),
`ABC1-P1T` = seq(101,110),
`ABC1-P2B` = seq(11,20),
`ABC1-P2T` = seq(201,210))
# A tibble: 10 x 5
Datetime `ABC1-P1B` `ABC1-P1T` `ABC1-P2B` `ABC1-P2T`
<date> <int> <int> <int> <int>
1 2000-01-01 1 101 11 201
2 2000-02-01 2 102 12 202
3 2000-03-01 3 103 13 203
4 2000-04-01 4 104 14 204
5 2000-05-01 5 105 15 205
6 2000-06-01 6 106 16 206
7 …Run Code Online (Sandbox Code Playgroud)