2016-07-27 61 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)) 
相关问题