在R中表示哈希表/字典/映射的自然方式

时间:2011-11-28 16:57:17

标签: r dictionary

我想在R中使用字典/地图数据结构,类似于Python的dict或C ++ STL的std::mapstd::hash_map

我可以做以下所有事情。它们的使用和/或性能有差异吗?如果是这样,哪个是在R中拥有这样一个数据结构的最佳方式?

> mm = c()
> mm["my key"] = 10
> mm[["my key"]]
[1] 10
> mm
my key 
    10

> mm = list()
> mm["my key"] = 10
> mm[["my key"]]
[1] 10
> mm
$`my key`
[1] 10

> mm = vector()
> mm["my key"] = 10
> mm[["my key"]]
[1] 10
> mm
my key 
    10 

1 个答案:

答案 0 :(得分:20)

最快的将是一个环境,因为默认情况下它们会被散列。

e <- new.env()
e$my_key <- 10
ls(e)