2016-06-23 65 views
-1

创建从列表列表,可以说,我有一个列表:x <- list(mtcars, iris, cars)没有嵌套

现在可以说,我想其他数据集添加到列表中。添加一个到最后很容易。 x[[4]] <- df

但是,让我们说我想添加一个元素到开始或让我们说我想将两个列表组合成一个列表。我不能做这样的事情

list(df,x) # not equal to list(df, mtcars, iris, cars) 

随着c这会工作,但上述会给我与嵌套的第二个元素的列表清单。

有没有从列表中创建一个列表没有嵌套?

+3

'c(list(df),x)' – thelatemail

+0

@thelatemail工作完成后我会接受它 – Carl

+0

您可能想了解'taRifx'包中的'merge.list'。 – dash2

回答

4

你需要有一个list添加到其他list S,SO:

df <- data.frame(a=1:10) 
c(list(df), x) 
#List of 4 
#... 

您可以使用append过,但你需要再次传递一个list

append(list(df),x) 
# equivalent to: 
append(x, list(df), after=0) 

...这意味着您可以指定确切的位置df按列表顺序添加。

0

是的,你使用附加功能。 例如:

x <- list() 

x <- append(x = x, c(mtcars, iris, cars)) 
+0

像'x < - list(mtcars,iris,cars)'后跟'append(df,x)'这样的东西并不像我所期望的那样给出4的列表 – Carl

+0

是的,因为你正在向df追加单个列表。你需要做append(x,c(mtcars,iris ...)) – Goldname