下面是一个示例代码,用于按照最近24小时分组并计算值的数量:
from datetime import datetime, timedelta
from collections import defaultdict
# 模拟数据
data = [
{'value': 1, 'timestamp': datetime.now() - timedelta(hours=2)},
{'value': 2, 'timestamp': datetime.now() - timedelta(hours=5)},
{'value': 3, 'timestamp': datetime.now() - timedelta(hours=20)},
{'value': 4, 'timestamp': datetime.now() - timedelta(hours=1)},
{'value': 5, 'timestamp': datetime.now() - timedelta(hours=10)},
{'value': 6, 'timestamp': datetime.now() - timedelta(hours=3)},
]
# 用于存储每个时间段的值数量
groups = defaultdict(int)
# 计算最近24小时的时间范围
start_time = datetime.now() - timedelta(hours=24)
end_time = datetime.now()
# 遍历数据,将值分组计数
for item in data:
timestamp = item['timestamp']
value = item['value']
if start_time <= timestamp <= end_time:
groups[timestamp] += 1
# 打印分组计数结果
for timestamp, count in groups.items():
print(f"{timestamp}: {count}")
这段代码假设你有一个数据列表(data
),其中每个元素包含一个值和一个时间戳。代码将计算最近24小时内的每个时间段内的值的数量,并将结果存储在groups
字典中。最后,代码会打印出每个时间段的值数量。
上一篇:按照最近1年(365天)聚合数据