【发布时间】:2018-11-16 20:02:32
【问题描述】:
我有两列:一列包含变量的名称,另一列包含它们各自的值。它只有两个变量,每个变量有三个观察值,如下例所示:
library(tidyverse)
tibble(
var = rep(letters[1:2],3),
vals = c(1:6)
) %>%
arrange(var)
# A tibble: 6 x 2
var vals
<chr> <int>
1 a 1
2 a 3
3 a 5
4 b 2
5 b 4
6 b 6
问题是我需要将a 和b 变成列,就像在这个预期输出中一样:
# A tibble: 3 x 2
a b
<dbl> <dbl>
1 1 2
2 3 4
3 5 6
我尝试使用tidyr::spread 执行此操作,但没有成功。有什么想法吗?
【问题讨论】:
-
我猜您遇到了重复标识符错误?您需要唯一标识的行。查看 cmets 并回复this question