gpt4 book ai didi

r - 如何使用正则表达式 pivot_longer 两组列

转载 作者:行者123 更新时间:2023-12-05 02:05:43 31 4
gpt4 key购买 nike

<分区>

我有这个数据

myvar = tibble(var_1 = c("a", "b", "c"),
var_2 = c("d", "e", "f"),
var_3 = c("g", "h", "i"),
something_var_1 = 1:3,
something_var_2 = 4:6,
something_var_3 = 7:9)

我想要这个输出

 n    var  something_var
1 a 1
2 d 4
3 g 7
4 b 2
etc

我看了这个例子并尝试修改它: https://tidyr.tidyverse.org/reference/pivot_longer.html(在标题#每行多次观察下)

myvar %>% 
pivot_longer(everything(),
names_to = c(".value", "set"),
names_pattern = "(.var_)(.)"
)

虽然这不起作用。我不太了解正则表达式,但这就是我认为它的工作原理。 .var_ 将匹配 var_ 之后的任何内容,这意味着它将与 var_ 和 something_var_ 匹配(如链接示例中的 x 和 y)。然后它会拆分并匹配任何东西(这将是数字 1-5。因此 var_ 和 something_var 值将获得与第 1 行中的 1 等对应的值。

如果您能解释一下您在这种情况下使用正则表达式时的想法,我将不胜感激。我已经完成了一个我在网上找到的小型正则表达式类(class),但我无法解决它。

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com