Python:按字典键分组,然后需要执行求和运算

时间:2018-08-22 09:56:04

标签: python matplotlib pandas-groupby xlrd

input = {1:5,2:8,9:3,11:4,18:3,21:4,3:8,350:5}

我想按操作进行分组并在

上执行求和操作

那本词典的值。

like grp_1 = 1,11,21; grp_2 = 9,3,18; grp_3 = 2

并且输出应该如下所示

grp_1 = 13(5 + 8 + 8个字典值)

grp_2 = 14(3 + 4 + 3个字典值)

grp_3 = 13

请提出最佳方法,然后我应该选择

自定义组,以便将来我可以添加另一个号码...

1 个答案:

答案 0 :(得分:0)

首先,

使用python 3.x而不是python 2.x,因为python 2即将淘汰:https://pythonclock.org/

在python 3中,最好通过以下方式使用CSV库:

import csv

,然后读入您拥有的值。

然后,您可以遍历每一行并在字典中填充所需的值:

region = {}

每次在数据集的每一行上进行迭代时,都可以在发现新区域时更新字典,或者仅添加一个已存在的区域。

if currentRegion in region.keys():
  region[currentRegion]+=1
else:
  region[currentRegion]=1

如果您还没有使用python的技能或不了解上面的代码行,那么查看python 3.x教程是一个好主意。它大约有100页,但是您只需覆盖第5章,直到您涵盖了列表和词典的使用,从而能够编码出您上面描述的问题的类型。该教程允许新手在1 / 2-1天内学习python基本技能。