R列表转换为单个数据帧单元
我想将列表更改为数据帧的一个单元格R列表转换为单个数据帧单元,r,list,dataframe,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 原因是我有一个循环,它将每次迭代的结果存储在一个列表中,但每次迭代只需要一个单元格 还有其他列,其中对于每个迭代,只有一个结果。因此,将其保存在数据帧中很容易。但是对于具有多个结果的度量,我不需要多个列或行 因此,我将有两个数据帧,我可以在其上使用c
list <- list(1,2,3,4,5)
View(list)
[[1]]
[1] 1
[[2]]
[1] 2
[[3]]
[1] 3
[[4]]
[1] 4
[[5]]
[1] 5
原因是我有一个循环,它将每次迭代的结果存储在一个列表中,但每次迭代只需要一个单元格
还有其他列,其中对于每个迭代,只有一个结果。因此,将其保存在数据帧中很容易。但是对于具有多个结果的度量,我不需要多个列或行
因此,我将有两个数据帧,我可以在其上使用cbind
,这样我的最终数据帧将如下所示:
x y
1 1,2,3,4,5 a
2 5,4,3 b
您可以通过
取消列表
和粘贴
轻松实现这一点,即
data.frame(x = paste(l1, collapse = ','))
# x
#1 1,2,3,4,5
或者干脆(谢谢@David)
另一方面,避免将列表命名为“列表”,因为R中有一个名为
list
的函数,您可以通过取消列表
和粘贴
轻松实现这一点,即
data.frame(x = paste(l1, collapse = ','))
# x
#1 1,2,3,4,5
或者干脆(谢谢@David)
另一方面,避免将列表命名为“list”,因为在R中有一个名为
list
的函数,或者我想是toString(l1)
的函数。或者只要粘贴(l1,collapse=',')就可以了,如果你想让粘贴更快或者更容易写的话?不确定。然而,我怀疑任何人都不会比其他人更有效率。或者我猜就是toString(l1)
。或者只要粘贴(l1,collapse=',')就可以了,如果你想让粘贴更快或者更容易写的话?不确定。然而,我怀疑任何人都会比其他人更有效率。
data.frame(x = toString(list))
# x
#1 1, 2, 3, 4, 5