【发布时间】:2015-12-20 15:58:19
【问题描述】:
我有两个问题:
- 对于大数据,
hash是否比data.table快? - 如果我想使用基于哈希的方法,如何处理每个键的多个值?
我查看了相关软件包的小插图并在 Google 上搜索了一些可能的解决方案,但我仍然不确定上述问题的答案。
考虑到以下帖子,
R fast single item lookup from list vs data.table vs hash
似乎在data.table 对象中的单个查找实际上非常慢,甚至比在 Base R 中的列表中还要慢?
但是,基于此基准,使用来自 hash 的哈希对象进行查找非常快速——准确吗?
但是,对象哈希似乎只处理唯一键?
在下面只创建了 2 个 (key,value) 对。
library(hash)
> h <- hash(c("A","B","A"),c(1,2,3))
> h
<hash> containing 2 key-value pair(s).
A : 3
B : 2
所以,如果我有一个包含 (key,values) 的表,其中一个键可以具有不同的值,并且我想对与该键对应的值进行(快速)查找,那么最好的对象/数据结构是什么在 R 中做到这一点?
我们还能使用hash 对象还是data.table 在这种情况下最合适?
假设我们正在处理一个非常大的表的问题,否则这个讨论是无关紧要的。
相关链接: http://www.r-bloggers.com/hash-table-performance-in-r-part-i/
【问题讨论】:
标签: r hash data.table