【发布时间】:2021-02-03 08:31:59
【问题描述】:
我有一个包含几个月数据的大型数据框,我需要在 31 天的每一天处理 [09:00:00-11:59:59] 之间的数据。
dataframe(df)的结构如下:
id,date,value
5,2012-03-01 00:00:00,0
2,2012-03-01 00:00:00,0
3,2012-03-01 00:00:00,0
1,2012-03-01 00:00:00,0
4,2012-03-01 00:00:00,0
我可以使用以下方法轻松过滤 [09:00:00 - 11:59:59] 之间的数据帧:
indx = pd.DatetimeIndex(df['date'])
df1 = df.iloc[indx.indexer_between_time('09:00:00','11:59:59')]
我还可以使用以下方法对每天的数据框进行分组:
df['date'] = pd.to_datetime(df['date'])
df_grouped = df.groupby([df['date'].dt.date])
df_list = []
for idx, data in df_grouped:
df_list.append(data)
我怎样才能将它们联系在一起以获得仅包含 [09:00:00-11:59:59] 之间数据的数据框列表。目的是循环使用 [09:00:00-11:59:59] 的数据的数据帧,并将它们中的每一个传递给某个函数以进行进一步处理:
【问题讨论】:
标签: python pandas numpy dataframe time-series