2013-10-07 86 views
1

有没有人知道熊猫,蟒蛇的总列? 我刚刚创建了一个包含超过20000列的熊猫数据框,但我得到了内存错误。pandas,python中有多少列?

非常感谢

+1

您应该考虑使用[hdf5](http://pandas.pydata.org/pandas-docs/dev/io.html#hdf5-pytables),以便处理大于内存大小的数据,这将读取数据块和读取为内存映射,请参阅[this](http://stackoverflow.com/questions/14262433/large-data-work-flows-using-pandas)为例 – EdChum

回答

5

因为你耗尽内存,您得到一个内存不足的错误,不是因为对列数的限制。

1

没有设置最大值的列 - 问题在于,很遗憾,您的计算机上可用的内存很少。

解决这个问题的一种方法是获得更多的内存 - 但从长远来看,这显然不是一个可靠的解决方案(也可能相当昂贵)。如果你所做的唯一的事情就是创建数据框并产生错误,那么你可以做很少的事情来解决这个特定的问题 - 尽管你可以把你的“大”数据框分成更小的数据框,然后在一次 - 甚至可能在不需要它们时将它们写入文件,因此它们不占用RAM内存。

你可能想看看改进你的算法,以便消耗更少的内存 - 看看this page,它包含了关于Python中内存分配的一些很好的信息。 Stack Overflow上的This question也有一些很好的技巧来分析你的内存使用情况!