Получение диапазона дат из магазина Pandas HDF5Store
Я хочу выбрать диапазон дат из моего HDFStore с помощью Pandas. Я заметил, что мои datetime (частота в миллисекундах) хранятся как время Unix с дополнительными нулями с добавлением справа, то есть 1514797200002000000. Я подозреваю, что мое предложение where неверно.
Это мой воспроизводимый код:
import pandas as pd
import numpy as np
path_file = "hdf5_store.h5"
data = np.random.randn(5)
cols = ["values"]
date_range = pd.date_range('20180101 09:00:00', periods=5, freq='ms')
df = pd.DataFrame(data=data, index=date_range, columns=cols)
with pd.HDFStore(path_file, mode="w", driver="H5FD_CORE") as store:
store.append("df", df, format="table", data_columns=["date_time"], index=False)
store.create_table_index("df", columns=["date_time"], kind="full")
print(store["df"])
df1 = pd.read_hdf(path_file, "df", where=["date_time>1514797200002000000"])
print(df1)
1 ответ
Это работает как запрос:
dt = pd.to_datetime(1514797200003000000)
df1 = pd.read_hdf(path_file, "df", where=["index>dt"])