Кадр данных среза на основе списка дат с разными частотами - PullRequest
0 голосов
/ 19 сентября 2018

Я пытаюсь нарезать кадр данных по строкам на основе интересующих дат.df_data имеет индекс на основе datetime в формате YYYY-MM-DD hh:mm:ss.
. Он содержит данные с 2012-01-01 по 2018-06-30 с частотой 1 минута.Другой dataframe содержит столбец с интересующими датами, но ежедневно посещается в формате YYYY-MM-DD.
. Я преобразовал это dataframe в список с именем dates_interest.

Я пытался df_final = df_data[df_data.index.isin(dates_interest)] для нарезки кадра данных в соответствии с моими потребностями, но df_final возвращает кадр данных с длиной 0.
Я думаю, это как-то связано с различными частотами / форматами.

1 Ответ

0 голосов
/ 19 сентября 2018

Я уверен, что есть более элегантное решение, но я подозреваю, что ваши интересующие даты интерпретируются как полночь (дата и минута).Если это так, вы захотите вытащить дни из этого df_data, а затем попробуйте снова нарезать.

# get a column of the days from your df_data
df_data['just_day'] = df_data.index.dt.date

# append the individual slices from each day into your df_final
df_final =pd.DataFrame()
for date_of_interest in dates_interest:
    df_final.append(df_data.loc[df_data['just_day']==date_of_interest]
...