2016-07-27 64 views
3

我知道,一個可以做這樣的事情如何在創建向量(或列表)時批量指定值和名稱?

x <- c(foo = 1, bar = 4) 

假設我想創建其值和名稱是從表情如the_values(some, args)the_names(some, args)獲得的矢量?

我知道,我可以通過分配創建所需的載體:

x <- the_values(some, args) 
names(x) <- the_names(some, args) 

有沒有辦法實現與分配一次同樣的事情?

我也對列表的類似問題感興趣。

回答

3

我們可以使用setNames

x <- setNames(the_values(some, args), the_names(some, args)) 

對於第一個例子

setNames(c(1,4), c("foo", "bar")) 

它的工作兩個listvector小號

setNames(list(1,4), c("foo", "bar)) 

另一種選擇是names<-

x <- `names<-`(the_values(some, args), the_names(some, args)) 
相關問題