我有一个 HDF5 文件 test1.h5 生成 py Pandas df.to_hdf("test1.h5","t") 调用。文件大小为 27M,只有一个键是 pandas 数据框。
s1 = pd.HDFStore("test1.h5")
<class 'pandas.io.pytables.HDFStore'>
File path: test1.h5
/t frame (shape->[999,2161])
数据框的大多数 dtypes 是 float32,带有一个 int 和 string
In [21]: s1['/t'].dtypes.value_counts()
Out[21]:
float32 2156
object 3
float64 1
int64 1
dtype: int64
令我困惑的是,如果我再次将数据帧保存到另一个 HDF5 文件 test2.h5,它只有 9.7M:
s1['/t'].to_hdf("test2.h5","t")
是什么导致读取和写入之间的大小不同?谢谢你。