我有一個名字,角色,多年經驗的csv。我想爲所有employess創建一個集合列表(name, role1, total_exp_inthisRole)
。 到目前爲止,我能夠用defaultdict做以下有效使用python groupby或defaultdict?
import csv, urllib2
from collections import defaultdict
response = urllib2.urlopen(url)
cr = csv.reader(response)
parsed = ((row[0],row[1],int(row[2])) for row in cr)
employees =[]
for item in parsed:
employees.append(tuple(item))
employeeExp = defaultdict(int)
for x,y,z in employees: # variable unpacking
employeeExp[x] += z
employeeExp.items()
輸出:[('Ken', 15), ('Buckky', 5), ('Tina', 10)]
但我如何使用第二個欄也能達到我想要的結果。我可以嘗試通過groupby
解決多個鍵或更簡單的方法嗎?感謝所有提前。
你可以給一個例子你想要的結果多少?我的意思是你想如何聚合這些列? – Kasramvd
是的! ('Ken','engineer',5),('ken,'sr。engineer',6),...]或[('Ken',('engineer',5),''sr。工程師',6)),...] – user6384905