【发布时间】:2020-03-18 19:24:16
【问题描述】:
我在h5py中做了一个数据集:
f = h5py.File("experimentReadings.hdf5", "w")
dset = f.create_dataset("physics", (5,4), dtype='f')
我有一个变量名列表:namesList = ['height', 'mass', 'velocity', 'gravity']。
我希望这些变量名是dset 中列的名称。
目前,这些列的名称只有数字 0,1,2,3,如下所示:
我想要这个:
我想我正在寻找这样的代码:
dset[:,0].column_name = namesList[0]
dset[:,1].column_name = namesList[1]
etc...
无论解决方案是什么,它都需要处理我正在使用的真实数据集,其中namesList 的长度为 280,000 个字。
【问题讨论】:
-
h5py使用numpy数组;他们没有列名。如果数组具有混合 dtypes,您可以使用structured数组,带有命名字段(而不是列)。但您可能想改用pandas数据帧。它使用pytables将数据保存到HDF5文件中。 -
@hpaulj 好的,我的数据集是 70,000 行 x 280,000 列,所有数据都是浮点数。 pandas 能处理这么大的数据集吗?