假设有一个包含日期和时间列的数据集,我们想要按照每天的3小时为一个时间间隔进行分组,并计算每个分组内的某些列的平均值。 可以使用pandas库中的groupby函数配合lambda函数实现。
示例代码如下:
import pandas as pd
# 读取数据
df = pd.read_csv('data.csv')
# 将日期列转换为datetime类型
df['date_time'] = pd.to_datetime(df['date_time'])
# 按照每天3小时为一个时间间隔进行分组,计算每个分组内的某些列的平均值
df_grouped = df.groupby(lambda x: (x.hour // 3) * 3).mean()
上述代码中,lambda函数将每个时间戳映射到包含小时的最靠近的3小时时间间隔。例如,时间戳"2021-01-01 07:23:45"将被映射为3(即上午6点至上午9点的时间间隔)。
最终的结果将是一个数据框,其中索引是分组的时间间隔(如0,3,6等),列是每个分组内某些列的平均值。
下一篇:按照每天重复获取交易金额