如何获得每个特定时间范围的平均值 pandas
How to get mean values per specific time range pandas
我想计算特定时间范围内每天的平均温度,例如日期 = 2021-03-11 时间 = 14:23:00 和 16:53:00 之间的平均温度。我尝试使用 pivot_table 以下内容:
in_range_df = pd.pivot_table(df, values=['Air_temp'],
index=['Date','Time'],
aggfunc={'Air_temp':np.mean})
数据框如下所示:
但是现在如何指定时间范围呢?感谢任何帮助。
通常你可以使用 between
:
df[df["Datum"].between('2021-03-11 14:23:00',
'2021-03-11 16:53:00',)]["Air_temp"].mean()
首先,您应该将 Datum
列转换为 datetime
类型:
df['Datum'] = pd.to_datetime(df['Datum'])
然后你可以像这样使用df.loc
:
t1 = '2021-03-11 14:23:00'
t2 = '2021-03-11 16:53:00'
df.loc[(df['Datum'] > t1) & (df['Datum'] < t2)]['Air_tmp'].mean()
我想计算特定时间范围内每天的平均温度,例如日期 = 2021-03-11 时间 = 14:23:00 和 16:53:00 之间的平均温度。我尝试使用 pivot_table 以下内容:
in_range_df = pd.pivot_table(df, values=['Air_temp'],
index=['Date','Time'],
aggfunc={'Air_temp':np.mean})
数据框如下所示:
但是现在如何指定时间范围呢?感谢任何帮助。
通常你可以使用 between
:
df[df["Datum"].between('2021-03-11 14:23:00',
'2021-03-11 16:53:00',)]["Air_temp"].mean()
首先,您应该将 Datum
列转换为 datetime
类型:
df['Datum'] = pd.to_datetime(df['Datum'])
然后你可以像这样使用df.loc
:
t1 = '2021-03-11 14:23:00'
t2 = '2021-03-11 16:53:00'
df.loc[(df['Datum'] > t1) & (df['Datum'] < t2)]['Air_tmp'].mean()