在Python中,可以使用itertools.groupby()
函数来按日期对组对象的值进行分组。下面是一个代码示例:
import itertools
# 假设有一个包含日期和值的列表
data = [
{'date': '2021-01-01', 'value': 10},
{'date': '2021-01-01', 'value': 20},
{'date': '2021-01-02', 'value': 15},
{'date': '2021-01-02', 'value': 25},
{'date': '2021-01-03', 'value': 30},
]
# 先按日期对数据进行排序
sorted_data = sorted(data, key=lambda x: x['date'])
# 使用itertools.groupby()函数按日期进行分组
grouped_data = itertools.groupby(sorted_data, key=lambda x: x['date'])
# 遍历每个分组,并打印结果
for date, group in grouped_data:
print(f"Date: {date}")
for item in group:
print(f"Value: {item['value']}")
运行以上代码,输出结果如下:
Date: 2021-01-01
Value: 10
Value: 20
Date: 2021-01-02
Value: 15
Value: 25
Date: 2021-01-03
Value: 30
在代码中,首先对数据进行排序,确保按日期分组时是连续的。然后使用itertools.groupby()
函数按日期对数据进行分组,返回一个迭代器,其中每个元素是一个元组,包含日期和相应的分组。最后,遍历每个分组并打印结果。
上一篇:按日期对字符串进行排序并排序。
下一篇:按日期返回交叉过滤器增长金额。