7

パンダとハロウィーン用のHDFで不気味なものがあります:

df = pandas.DataFrame([['a','b'] for i in range(1,1000)])
store = pandas.HDFStore('test.h5')
store['x'] = df
store.close()

それから

ls -l test.h5
-rw-r--r-- 1 arthur arthur 1072080 Oct 26 10:50 test.h5

1.1M?少し急ですが、どうしてですか。ここで物事は本当に不気味になります

store = pandas.HDFStore('test.h5') #open it again
store['x'] = df #do the same thing as before!
store.close()

それから

ls -l test.h5
-rw-r--r-- 1 arthur arthur 2122768 Oct 26 10:52 test.h5

これでトワイライトゾーンに入りました。言うまでもなく、操作後のストアは区別できませんが、反復するたびにファイルが少し太くなります。

文字列が関係している場合にのみ発生するようです。バグレポートを提出する前に、ここで何かが足りないかどうか知りたいのですが...

4

2 に答える 2

4

ええ:「HDF5はデータベースではありません」。多くの場合、ptrepack (PyTables の一部) を使用して、デッド バイトなしで HDF5 ファイルを「再パック」します。

于 2012-10-27T13:37:15.390 に答える
4

それが理由かもしれません: http://www.hdfgroup.org/hdf5-quest.html#del

これは、HDF5 の 1 つの大きな落とし穴です。

于 2012-10-26T19:08:56.983 に答える