私はパンダ0.14.1を使用しています。タイムゾーンを使用した階層インデックスで、2 つのタイムスタンプによってデータのインデックスを作成する必要があるとします。結果のDataFrameをhdf5に保存すると、タイムゾーンの認識が失われるようです:
import pandas as pd
dti1 = pd.DatetimeIndex(start=pd.Timestamp('20000101'), end=pd.Timestamp('20000102'), freq='D', tz='EST5EDT')
dti2 = pd.DatetimeIndex(start=pd.Timestamp('20000102'), end=pd.Timestamp('20000103'), freq='D', tz='EST5EDT')
mux = pd.MultiIndex.from_arrays([dti1, dti2])
df = pd.DataFrame(0, index=mux, columns=['a'])
ここdf
にタイムゾーンがあります:
a
2000-01-01 00:00:00-05:00 2000-01-02 00:00:00-05:00 0
2000-01-02 00:00:00-05:00 2000-01-03 00:00:00-05:00 0
保存して hdf5 にロードした後、タイムゾーン情報が消えるようです:
df.to_hdf('/tmp/my.h5', 'data')
pd.read_hdf('/tmp/my.h5', 'data')
結果:
a
2000-01-01 05:00:00 2000-01-02 05:00:00 0
2000-01-02 05:00:00 2000-01-03 05:00:00 0
良い回避策はあるのか、これは既知のバグなのかどうか疑問に思います。