考虑以下:
tribble(
~"1", ~"2", ~"3", ~"4",
"bob", "sally", "fred","jim",
"2011", "2012", "2013", "2014"
)
在上面,列“1”存储我们真正想要分隔列的值,例如:
tribble(
~col, ~name, ~year,
"1", "bob", "2011",
"2", "sally", "2012",
"3", "fred", "2013",
"4", "jim", "2014"
)
起初,我尝试过pivot_longer(everything())
但这会产生重复的行。
name value
<chr> <chr>
1 1 bob
2 2 sally
3 3 fred
4 4 jim
5 1 2011
6 2 2012
7 3 2013
8 4 2014
我考虑然后尝试pivot_wider
,但我无法部分选择上面值列中的年份或名称。
有任何想法吗?当然,这是一个玩具示例 - 基本思想是获取多行并将它们转换为列,而不需要重复代码。