2016-06-23 62 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