【发布时间】:2013-03-17 20:03:46
【问题描述】:
我有一个中等大小的数据库(约 400,000 行,27 列),我需要使用相同的比较标准搜索大部分列(其中 25 列)。我认为将数据重塑/融合为“长”格式会更有效,因此我使用了 reshape2 包来生成 ~9,000,000 行/4 列数据集。除了花费很长时间(我只有 2GB 的 RAM)之外,重新调整后的文件大小非常巨大:500MB。
是否有更高效/计算量更少的方式:
- 重塑和存储从宽到长的数据?
- 完全避免重塑并仍然使用相同的搜索条件搜索多个列?
【问题讨论】:
-
你的帖子没有数据,太笼统了。如果不运行数据(复制它),就无法找出问题(如果有的话)。第二个问题的答案是,是的,您可以搜索。除非您可以具体(将您的问题缩小到可重现的数据,并向我们展示您期望的输出......以防数据很小)。如果是大数据(如您的),那么您必须与我们联系,也许我们中的一个可以调查一下。
-
@Arun 任何基本的从宽到长的转换都可以很容易地说明我的观点。例如,下面@Matthew 的示例使用
Indometh数据集。我有兴趣搜索所有conc列(0.25、0.50、0.75等)并搜索它们何时大于1.00。将其转换为长格式并根据此条件进行搜索比使用宽格式更容易。