簡體   English   中英

如何將向量附加到R中的向量列表?

[英]How to append a vector to a list of vectors in R?

這個問題關系到一個較早的一個 ,除了答案了,(用c()函數),也恰恰是不是為我工作。

首先,我創建了一個向量列表,然后創建了另一個向量。

a_list <- lapply(mtcars, as.integer)
junk <- c(1:length(a_list[[1]]))

現在,如果使用c(a_list, junk) (如先前問題的答案所建議),我得到的答案將與如果說a_list[["junk"]] <- junk (后者產生)完全不同。預期的結果)。 似乎前一種方法添加的是as.list(junk)

如何在不將c()轉換為as.list(junk)結果的情況下使用c()添加junk

以這種方式使用list()c(a_list, junk=list(junk))

在嘗試弄清楚上面有問題的場景中添加的內容(以更好地表達我的問題)時,我意識到listas.list所做的事情截然不同。 通過將垃圾變成一個單元素列表(使用list() ),它可以按期望的方式“按原樣”添加。

實際上,這被隱藏在對Dirk Eddelbuettel的回答的“顯示更多評論”注釋中,並且(更令人尷尬地)隱藏在c()本身的幫助中。 引用幫助:

## do *not* use
c(ll, d = 1:3) # which is == c(ll, as.list(c(d = 1:3))
## but rather
c(ll, d = list(1:3))  # c() combining two lists

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM