如何创建一个字典并在R中插入一个值列表?

时间:2016-09-14 14:08:11

标签: r dictionary

我想循环浏览文件的内容,计算每个单词的键,然后将具有相同键的单词存储在列表中。

在python中,它如下所示:

dictionary = {}
for word in file:
    key = dosomecalucation(word)
    dictionary.setdefault(key, [])
    dictionary[key].append(word)

在R中,我如何声明一个字符串作为字符串和值作为列表? 如何检查字典中是否存在密钥?

1 个答案:

答案 0 :(得分:1)

您可以使用hash包执行此任务:

library(hash)

h <- hash()

for (word in file) {
    key <- dosomecalculation(word)
    if (!has.key(key, h)) {
        h[key] <- list()
    } else {
        h[key] <- append(h[[key]], word)
    }
}

使用[[进行索引(例如h[["foo"]])将返回相应的列表。