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

标签 r dictionary

我想在 R 中使用字典/ map 数据结构,类似于 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 

最佳答案

最快的将是一个环境,因为它们默认是散列的。

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

关于r - 在 R 中表示哈希表/字典/映射的自然方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8299367/

相关文章:

java - 如果条目已经存在,Map 会保留哪个键实例?

r - R 中列表对象的长度不为 1 时返回 1

python - 识别具有特定值的间隔

python - 字典交集后去掉括号

r - dplyr 重新编码 qoute 元素

c# - 使用值初始化 C# 字典的正确方法

arrays - 在bash中将数组中的一个键关联多个值

roxygenise 仅一个 .R 文件以将该文件及其文档添加到包中

在 R 数据帧中用 0 替换 NA

r - 如何在绘图仪表图中计算指针位置