使用字符串键生成列表?

时间:2012-06-21 12:33:37

标签: r

我有两个向量,v1和v2

v1 <- c('one', 'two', 'three')
v2 <- c('two', 'three', 'four')

我想创建一个产生:

的列表
"two" : "two", "three" : "three"

目前,我只能生成此代码:

> l <- list()
> l <- c(l, subset(v1, v1 %in% v2)
> l
    [[1]]
    [1] "two"

    [[2]]
    [1] "three"

如何使键成为实际值而不是索引?感谢。

1 个答案:

答案 0 :(得分:1)

我不完全确定你的'钥匙'是什么意思,但我猜你希望列表节点的'名称'与值相同:

l <- c(l, subset(v1, v1 %in% v2) )
names(l) <- unlist(l)
 l
$two
[1] "two"

$three
[1] "three"

(我反对命名列表'l',因为l和1字符在serif字体中经常容易混淆。更不用说l和I在非serif字体中的歧义。)