python groupby怎么指定月份
时间: 2023-07-27 15:07:11 浏览: 142
在Python的`groupby`函数中,可以通过传递一个函数来指定按照什么方式分组。如果你想要按照月份进行分组,可以使用`datetime`模块中的`datetime`对象来获取每个日期的月份,然后将其作为`groupby`的函数参数。具体实现如下:
```python
from itertools import groupby
from datetime import datetime
dates = ['2021-01-02', '2021-03-04', '2021-01-10', '2021-02-18', '2021-03-22']
def group_by_month(date_str):
date = datetime.strptime(date_str, '%Y-%m-%d')
return date.month
grouped_dates = groupby(sorted(dates, key=group_by_month), key=group_by_month)
for month, group in grouped_dates:
print(f"Month: {month}")
for date in group:
print(date)
```
在上面的代码中,我们首先定义了一个`group_by_month`函数,它将日期字符串转换为`datetime`对象,然后返回该日期的月份。接着,我们使用`sorted`函数按照月份对日期进行排序,然后将其传递给`groupby`函数,以便按照月份分组。最后,我们遍历分组后的结果,输出每个月份及其对应的日期。
阅读全文