我在跨整个字典进行迭代时遇到问题,无法对键的值中的每个元素进行简单的汇总统计(平均值)。Python - 字典中各个键的每个值的均值
我的字典由那些号码清单键和值:
test_dict={'NJ':[20,50,70,90,100],'NY':[10,3,0,99,57],'CT':[90,1000,2,3.4,5]}
我知道,我可以访问每一个关键的第一个值,例如,通过执行以下,但我有麻烦明显的下一步是添加另一个for循环来遍历值中的所有元素。
location1=[element[0] for element in test_dict.values()]
location1_avg=sum(location1)/len(location1)
我的最终目标是有标签的字典作为键(位置1 ... i)和各州该位置的平均值。所以第一个键值就是Location1:40,依此类推。
我有下面的尝试,但错误消息是'列表索引超出范围',我不知道如何在这种情况下正确迭代。
for element in test_dict.values():
avg=list()
for nums in element[i]:
avg[i]=sum(element[i][nums])/len(element[i][nums])
添加每请求
soln_dict={'Location1':40,'Location2':351,'Loction3':24,'Loction4':43.24,'Loction5':54}
感谢您的帮助所需的输出!
2017-09-23
Z_D
+1
你能说出你期望得到'test_dict'的结果吗? –
+0
@ Jean-FrançoisFabre我怀疑40应该是20,10和90的平均值,所以期望的结果可能是5个数字的列表,而不是带有3个键的字典。 –
+0
你说得对 - 所需的输出是一个包含5个键值对的字典。第一个将是位置1:40 –