首页 > 解决方案 > Python:按字典键分组,然后需要执行求和操作

问题描述

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

我想按操作分组并执行求和操作

该字典的值。

像 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

请建议最好的方法,然后我应该可以选择

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

标签: pythonmatplotlibpandas-groupbyxlrd

解决方案


首先:

使用 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 基本技能。


推荐阅读