【发布时间】:2015-02-18 05:34:06
【问题描述】:
我有一个很大但非常稀疏的矩阵(50,000 行*100,000 列,只有 10% 的值是已知的)。该矩阵的每个已知元素都是从 0.00 到 1.00 的浮点数,这些已知值存储在 python dict 中,格式如下:
{'c1': {'r1':0.27, 'r3':0.45},
'c2': {'r2':0.65, 'r4':0.87} }
现在的问题是如何有效地从这个字典构造一个 pandas.DataFrame ?在这里,效率包括内存使用和构建数据帧的时间。
对于内存使用,我希望通过 np.uint8 存储每个元素。因为已知值是从 0.00 到 1.00,而我只关心前 2 位数字,所以我可以通过乘以 100 将其转换为无符号的 8 位整数。这可能会为该数据帧节省大量内存存储。
有什么办法吗?
【问题讨论】:
-
您可能会发现我在这里的自我回答很有帮助:stackoverflow.com/questions/27160867/…