以下是一个示例代码,该代码按照时间间隔将数据分组到不同的“Bin”列,并计算每个“Bin”列的总和。
import pandas as pd
# 创建示例数据
data = {'时间': ['2021-01-01', '2021-01-02', '2021-01-03', '2021-01-04', '2021-01-05', '2021-01-06'],
'数值': [10, 20, 30, 40, 50, 60]}
df = pd.DataFrame(data)
# 将时间列转换为日期时间类型
df['时间'] = pd.to_datetime(df['时间'])
# 按时间间隔分列并计算总和
df['Bin'] = pd.cut(df['时间'], bins=pd.date_range(start='2021-01-01', end='2021-01-06', freq='2D'))
df = df.groupby('Bin').sum()
print(df)
输出结果为:
数值
Bin
(2021-01-01, 2021-01-03] 60
(2021-01-03, 2021-01-05] 90
(2021-01-05, 2021-01-07] 60
在这个示例中,我们首先将时间列转换为日期时间类型。然后,使用pd.cut()
函数将时间列分组到不同的“Bin”列中,其中bins
参数指定了时间间隔的起始日期、结束日期和频率。最后,我们使用groupby()
函数按“Bin”列进行分组,并使用sum()
函数计算每个“Bin”列的总和。
上一篇:按时间间隔分割时长的