我尝试根据感兴趣的日期按行对数据框进行切片。 df_data
的索引基于datetime
,格式为YYYY-MM-DD hh:mm:ss
。
它以1分钟的频率包含从2012-01-01到2018-06-30的数据。另一个dataframe
包含一列带有感兴趣日期的列,但每天以YYYY-MM-DD
格式出现。
我将此dataframe
转换为一个名为dates_interest
的列表。
我尝试df_final = df_data[df_data.index.isin(dates_interest)]
根据需要对数据帧进行切片,但是df_final
返回的数据帧的长度为0。
我想这与不同的频率/格式有关。
答案 0 :(得分:0)
我肯定有一个更优雅的解决方案,但是我怀疑您感兴趣的日期被解释为午夜(日期和分钟)。如果是这样,您将希望从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]