require(dplyr)
require(tidyr)
mutate(data,vectors=sapply(vectors, function(x) paste(x,collapse=","))) %>%
separate_rows(vectors,sep=",") %>%
group_by(id) %>%
mutate(numb=row_number(),vectors=as.numeric(vectors)) %>%
spread(key=numb,value=vectors)
# A tibble: 10 x 26
# Groups: id [10]
id `1` `2` `3` `4` `5` `6` `7` `8` `9` `10` `11` `12` `13` `14` `15` `16`
<int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
2 2 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
3 3 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
4 4 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
5 5 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
6 6 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
7 7 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
8 8 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
9 9 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
10 10 1.46 0.140 0.209 -3.04 -0.487 -1.09 0.0579 1.10 -0.0256 0.515 0.990 0.303 -0.930 0.0840 0.527 0.0159
# ... with 9 more variables: `17` <dbl>, `18` <dbl>, `19` <dbl>, `20` <dbl>, `21` <dbl>, `22` <dbl>, `23` <dbl>,
# `24` <dbl>, `25` <dbl>
我发现,首先将数据收集成一种长数据格式,这样最容易传播数据。我们通过使用
separate_rows
. 这里的问题是,我们首先需要将向量中的列表转换成一些东西
分隔行
我们可以一起工作。我们使用
paste
具有
collapse=","