R列表成单个数据帧单元

时间:2016-12-05 13:44:07

标签: r list dataframe

我想将列表更改为数据框的一个单元格。

  list <- list(1,2,3,4,5)

View(list)

[[1]]
[1] 1

[[2]]
[1] 2

[[3]]
[1] 3

[[4]]
[1] 4

[[5]]
[1] 5

我想改变这个看起来像:

          x
1 1,2,3,4,5

原因是因为我有一个循环将结果存储在每个迭代的列表中,但我每次迭代只需要一个单元格。

还有其他列,每次迭代只有一个结果。因此,在数据框中保存它很容易。但是对于具有多个结果的指标,我不想要多个列或行。

所以我将有两个数据框,我可以使用cbind,这样我的最终数据框将如下所示:

          x y
1 1,2,3,4,5 a
2     5,4,3 b

1 个答案:

答案 0 :(得分:1)

您可以通过unlistpaste轻松实现这一目标,即

data.frame(x = paste(l1, collapse = ','))
#          x
#1 1,2,3,4,5

或简单地(感谢@David)

data.frame(x = toString(list))
#              x
#1 1, 2, 3, 4, 5

另一方面,请避免命名列表'列表',因为R中有一个名为list的函数