首页 > 解决方案 > “Python”从数据框中获取一小时的特定行

问题描述

我想让每个小时或每天的所有行都为它们做一些计算。所以我的意思是如何迭代数据框并过滤一个小时的行,进行计算然后移动到下一个小时

问题:如何获取每个小时/每天的行?

df
  Date      TimeStamp    col1
20150102     20:00:00    SomeData
20150102     20:01:00    SomeData
20150102     20:02:00    SomeData
20150102     20:03:00    SomeData
20150102     20:04:00    SomeData
20150102     20:05:00    SomeData


for index, row in df.iterrows():
#grouping these rows of a min/an hour and do some calculations based on these rows

标签: pythonpython-3.xpandasdataframe

解决方案


您应该使用 pandasgroupby按小时/天对行进行分组,然后您可以对其他列执行计算。

将小时/天提取到另一列中将类似于:

df['Hour'] = df['TimeStamp'].dt.hour
df['Day'] = df['Date'].dt.day

之后,您将分组:

df.groupby('Hour')...
df.groupby('Day')...

推荐阅读