这是一个懒惰的人的问题。
我有400万行pandas DataFrame,并希望将它们保存到较小的pickle文件块中。
为什么小块? 要更快地保存/加载它们。
我的问题是: 1)是否有更好的方法(内置功能)将它们保存在较小的部分而不是使用np.array_split手动分块?
2)除了手动将它们粘在一起之外,还有什么方法可以将它们粘在一起吗?
除了泡菜外,请随意提出适合此工作的任何其他数据类型。
答案 0 :(得分:4)
如果目标是快速保存和加载,您应该查看using sql而不是原始文本酸洗。如果您的计算机在要求它写入400万行时会窒息,您可以指定一个块大小。
从那里你可以用std查询切片。 SQL。
答案 1 :(得分:3)
我一直在使用这个数据框,大小为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