【发布时间】:2020-07-15 23:41:18
【问题描述】:
我有一个小脚本,用于从用户输入目录读取 csv 文件并将它们转换为单个 HDF5 文件:
path = input('Insert the directory path:')
file_list = []
for file in glob.glob(path):
file_list.append(file)
for filename in file_list:
df = pd.read_csv(filename)
key = Path(filename).resolve().stem
with pd.HDFStore('test.h5') as store:
store.append(key=key, value=df, format='table', data_columns=df.columns)
当前所做的是将每个文件(以数据框格式)附加为一个组。如果我在 vitables 中打开它,它看起来像这样:
另外,如果我使用另一个目录再次运行脚本,它将继续将新组(每个文件一个)附加到根组。
我想要的是每次我运行脚本时,它都会将文件组附加到根目录中的一个新组(主题)中。像这样的:
我觉得这可能与我传入store.append 的键有关,因为现在它使用文件名作为键。我能够手动传递密钥并附加所需的数据帧,但这不是我想要的最终目标。
一些建议会很棒!谢谢
【问题讨论】:
标签: python pandas hdf5 hdfstore