泡菜转储 Pandas DataFrame
Pickle dump Pandas DataFrame
这是一个懒人的问题
我有 400 万行 pandas DataFrame,我想将它们保存到更小的 pickle 文件块中。
为什么更小的块?
让他们 save/load 更快。
我的问题是:
1) 有没有比使用 np.array_split?
手动分块更好的方法(内置函数)将它们保存成更小的块
2) 当我阅读这些块时,除了手动将它们粘合在一起之外,还有什么优雅的方法可以将它们粘合在一起吗?
除了 pickle 之外,请随意建议适合此工作的任何其他数据类型。
如果目标是快速保存和加载,您应该研究 using sql 而不是原始文本酸洗。如果您的计算机在您要求写入 400 万行时卡住,您可以指定块大小。
从那里您可以使用 std 查询切片。 SQL.
我一直在将其用于大小为 7,000,000 x 250 的数据框
使用 hdfs DOCUMENTATION
df = pd.DataFrame(np.random.rand(5, 5))
df
df.to_hdf('myrandomstore.h5', 'this_df', append=False, complib='blosc', complevel=9)
new_df = pd.read_hdf('myrandomstore.h5', 'this_df')
new_df
这是一个懒人的问题
我有 400 万行 pandas DataFrame,我想将它们保存到更小的 pickle 文件块中。
为什么更小的块? 让他们 save/load 更快。
我的问题是: 1) 有没有比使用 np.array_split?
手动分块更好的方法(内置函数)将它们保存成更小的块2) 当我阅读这些块时,除了手动将它们粘合在一起之外,还有什么优雅的方法可以将它们粘合在一起吗?
除了 pickle 之外,请随意建议适合此工作的任何其他数据类型。
如果目标是快速保存和加载,您应该研究 using sql 而不是原始文本酸洗。如果您的计算机在您要求写入 400 万行时卡住,您可以指定块大小。
从那里您可以使用 std 查询切片。 SQL.
我一直在将其用于大小为 7,000,000 x 250 的数据框
使用 hdfs DOCUMENTATION
df = pd.DataFrame(np.random.rand(5, 5))
df
df.to_hdf('myrandomstore.h5', 'this_df', append=False, complib='blosc', complevel=9)
new_df = pd.read_hdf('myrandomstore.h5', 'this_df')
new_df