我有一本字典。我想要计算每个键的值的平均值并打印结果,以便结果显示键和相关的平均值。下面的代码计算平均值,但我不知道如何将键与平均值关联起来。我想要的答案是Mean = {22:average1,23:average2,24:average3}。
mydict = {22: [1, 0, 0, 1], 23: [0, 1, 2, 1, 0], 24: [3, 3, 2, 1, 0]}
Mean =[float(sum(values)) / len(values) for key, values in
mydict.iteritems()]
发布于 2017-09-07 02:44:25
不要使用列表理解。使用字典理解来计算每个列表的平均值。您还可以使用from __future__ import division
来避免使用float
>>> from __future__ import division
>>> d = {22: [1, 0, 0, 1], 23: [0, 1, 2, 1, 0], 24: [3, 3, 2, 1, 0]}
>>> mean = {k: sum(v) / len(v) for k, v in d.iteritems()}
>>> mean
{22: 0.5, 23: 0.8, 24: 1.8}
发布于 2020-11-21 23:01:26
Python 3.4+更新
>>> from statistics import mean # Python 3.4+
>>> d = {22: [1, 0, 0, 1], 23: [0, 1, 2, 1, 0], 24: [3, 3, 2, 1, 0]}
>>> {k:mean(v) for k,v in d.items()}
{22: 0.5, 23: 0.8, 24: 1.8}
>>>
https://stackoverflow.com/questions/46082236
复制相似问题