list - 如何访问嵌套列表中的变量并绘制直方图
问题描述
我有以下数据:
[{'_id': {'day': 11, 'month': 10, 'site_id': '3146102', 'year': 2015}, 'totalVolume': 15731.74},
{'_id': {'day': 1, 'month': 10, 'site_id': '3146102', 'year': 2018},
'totalVolume': 70537522.867},
{'_id': {'day': 30, 'month': 9, 'site_id': '3146102', 'year': 2018},
'totalVolume': 293037881.211}]
如何访问month
和绘制基于的总量month
?
解决方案
这可能会有所帮助(伪代码):
from itertools import groupby
data = [] # your data
data.sort(key=lambda k: k['month'])
data_to_plot = []
for month, month_data in groupby(data, lambda x: x['month']):
month_total_production = sum(data['totalVolume'] for data in month_data)
data_to_plot.append(tuple(month, month_total_production))
plot(data_to_plot)