R - 从名称变量创建列表

时间:2013-11-01 16:37:15

标签: r list

考虑以下代码

names = c("1","2","3")
values = c(1.0,1.5,0.5)
list(names = values)

这会产生以下列表

$names
[1] 1.0 1.5 0.5

但我想要的清单是:

$`1`
[1] 1

$`2`
[1] 1.5

$`3`
[1] 0.5

换句话说,list("1"=1.0,"2"=1.5,"3"=0.5)

那么,如何从上面的变量namesvalues开始创建这样的列表呢?

2 个答案:

答案 0 :(得分:4)

您可以使用setNamesas.list

setNames(as.list(values), names)
# $`1`
# [1] 1
#
# $`2`
# [1] 1.5
# 
# $`3`
# [1] 0.5

答案 1 :(得分:2)

Map(function(x,y) y,names,values)

$`1`
[1] 1

$`2`
[1] 1.5

$`3`
[1] 0.5