下面是一个示例代码,展示了如何按月份和年份对Pandas中的日期(datetime64[ns])进行分组并按计数汇总:
import pandas as pd
# 创建一个示例数据集
df = pd.DataFrame({'date': ['2022-01-01', '2022-02-01', '2022-02-15', '2022-03-01', '2022-03-15'],
'value': [1, 2, 3, 4, 5]})
# 将日期列转换为 datetime64[ns] 类型
df['date'] = pd.to_datetime(df['date'])
# 按月份和年份对日期进行分组,并计算每个组中的计数
grouped = df.groupby([df['date'].dt.year, df['date'].dt.month]).size()
# 将分组结果转换为 DataFrame 格式,并设置列名
result = pd.DataFrame(grouped, columns=['count'])
# 打印结果
print(result)
运行上述代码,输出结果如下:
count
date date
2022 1 1
2 2
3 2
该示例中,首先创建了一个包含日期和值的数据集。然后,将日期列转换为 datetime64[ns] 类型。接下来,使用 groupby
函数按照日期的年份和月份进行分组,并使用 size
函数计算每个组中的计数。最后,将分组结果转换为 DataFrame 格式,并设置列名为 "count"。
下一篇:按月份和年份对数组进行排序