Python 将数据帧写入HDF5
我正在用python处理大量文件,需要直接在Python 将数据帧写入HDF5,python,hadoop,pandas,dataframe,Python,Hadoop,Pandas,Dataframe,我正在用python处理大量文件,需要直接在HDF5中写入输出(每个输入文件一个数据帧)。 我想知道什么是将pandas数据帧从脚本直接快速写入HDF5的最佳方法?我不确定是否有像hdf5、hadoopy这样的python模块可以做到这一点。在这方面的任何帮助都将不胜感激 对于这个相当普通的问题,很难给你一个好的答案 不清楚如何使用(读取)HDF5文件-是否要有条件地选择数据(使用where参数) 打开存储对象所需的所有信息: store = pd.HDFStore('/path/to/file
HDF5
中写入输出(每个输入文件一个数据帧)。
我想知道什么是将
pandas
数据帧从脚本直接快速写入HDF5
的最佳方法?我不确定是否有像hdf5、hadoopy这样的python模块可以做到这一点。在这方面的任何帮助都将不胜感激 对于这个相当普通的问题,很难给你一个好的答案
不清楚如何使用(读取)HDF5文件-是否要有条件地选择数据(使用where
参数)
打开存储对象所需的所有信息:
store = pd.HDFStore('/path/to/filename.h5')
现在您可以写入(或追加)存储(我在这里使用的是blosc
压缩-它非常快速有效),此外,我还将使用data\u columns
参数来指定必须索引的列(这样您可以在以后读取HDF5文件时在where
参数中使用这些列):
Nickil建议编辑将HDFS更改为HDF5(然后基于此进行回答),但HDFS和HDF5在您的问题上下文中似乎都有意义。。。你是什么意思?
for f in files:
#read or process each file in/into a separate `df`
store.append('df_identifier_AKA_key', df, data_columns=[list_of_indexed_cols], complevel=5, complib='blosc')
store.close()