大熊猫数据帧与列表与元组等的内存使用/效率

时间:2014-11-26 03:35:08

标签: python-3.x pandas

我试图在Python中创建一个类,最终存储一些文本文档以及每个文档的一些元数据。想想这样的结构:

ID    Text                        Date       Followers
1     "This is a tweet"           10/21/14   57
2     "This is another tweet"     10/22/14   100
3     "Yet another"               10/23/14   3899 
4     "Another one"               10/25/14   234

存储这类内容的最佳和最有效内存的方法是什么?它是四个不同的列表(例如)吗?或者也许是字典和/或元组?还是作为Pandas Dataframe?

每个人之间是否存在显着差异?我想将它们存储为Pandas数据帧只是为了便于处理数据,但我也想留意内存使用情况和较大数据集的速度。

1 个答案:

答案 0 :(得分:1)

您的问题实在太宽泛,无法简单回答。但是我可以分享一些想法。

我倾向于只考虑3个桶中的数据,因为它与大小有关:

  1. 适合一台机器的内存
  2. 适合一台计算机上的磁盘但不适合内存
  3. 一台机器太大
  4. 我们可以永远花在讨论我们应该为这三个桶中的每一个使用哪个框架或数据结构。但是我发现,对于我的分析工作,90%的时间很简单:

    1. Numpy数组或Pandas
    2. PyTables
    3. Hadoop或分布式数据库
    4. 如果我有令人信服的理由,我只会寻找除上述之外的数据结构。

      我希望有所帮助。