-->

在该载体转化载体导入的列表,每个元素作为列表中的一个元素(Convert a vector into

2019-09-01 21:33发布

该载体是这样的:

c(1,2,3)
#[1] 1 2 3

我需要的是这样的:

list(1,2,3)
#[[1]]
#[1] 1
#
#[[2]]
#[1] 2
#
#[[3]]
#[1] 3

我尝试这样做:

list(c(1,2,3))
#[[1]]
#[1] 1 2 3

Answer 1:

很简单,只是这样做:

as.list(c(1,2,3))


Answer 2:

一个除了接受的答案:如果你想一个向量在一个较长的列表中添加其他元素,as.list()可能不会产生你所期望的。 例如:您要添加2种文本元素和五个数字元素(1:5)的载体,做一个列表是7个元素长。

L<-list("a","b",as.list(1:5)) 

糟糕:它返回与3个元素的列表,并且该第三元件具有5个元素的子列表; 不是我们想要的! 解决的办法是将两个单独的列表:

L1<-list("a","b")
L2<-as.list(1:5)
L<-c(L1,L2) #7 elements, as expected


文章来源: Convert a vector into a list, each element in the vector as an element in the list
标签: r r-faq