<分区>
我有一个看起来像这样的数据集:
df_start <- tribble(
~name, ~age, ~x1_sn_ctrl1, ~x1_listing2_2, ~x1_affect1, ~x2_sn_ctrl1, ~x1_listing2_2, ~x2_affect1, ~number,
"John", 28, 1, 1, 9, 4, 5, 9, 6,
"Paul", 27, 2, 1, 4, 1, 3, 3, 4,
"Ringo", 31, 3, 1, 2, 2, 5, 8, 9)
在处理列中的分组时,我需要 pivot_longer()
:
- 有 2 个 x 值(1 和 2)
- 每个 x 值有 3 个问题(sn_ctrl1、listing2_2、affect1)
在我的实际数据集中,有 14 个 x。
基本上,我想做的是将 pivot_longer()
应用于 x 值,但保留我的 3 个问题(sn_ctrl1、listing2_2、affect1)。
我想结束的是:
df_end <- tribble(
~name, ~age, ~xval, ~sn_ctrl1, ~listing2_2, ~affect1, ~number,
"John", 28, 1, 1, 1, 9, 6,
"John", 28, 2, 4, 5, 9, 6,
"Paul", 27, 1, 2, 1, 4, 4,
"Paul", 27, 2, 1, 3, 3, 4,
"Ringo", 31, 1, 3, 1, 2, 9,
"Ringo", 31, 2, 2, 5, 8, 9)
我在 names_pattern
和 pivot_longer
中尝试了 很多 非常不成功的尝试,但我完全失败了。
有人知道如何解决这个问题吗?
谢谢!
PS:请注意,我试图制作一个简单易懂的可重现示例。我的专栏的实际名称略有不同。例如,有 x1_sn_ctrl1
& x1_attr1_ctrl2
。