我有一个看起来像这样的表:
id value
AGA 0.211
AGA 0.433
AGA 0.123
AGH 0.002
DHI 0.063
DHI 0.193
DHI 0.004
KHI 0.543
KHI 0.064
HID 0.234
对于每个 id,有时会有不同的值。我想计算每个 id 有多少个入口,每个 id 的平均值和值的总和,所以结果会是这样的:
id cnt sum av
AGA 3 0.76 0.25
AGH 1 0.002 0.002
DHI 3 0.26 0.008
KHI 2 0.607 0.304
HID 1 0.234 0.234
我认为最好先制作一本字典,在其中计算每个条目,但之后就卡住了,不知道是否最好将字典的值作为数组(带有cnt、sum和av)和然后使用Cnt的范围来计算,但想不出办法!这是我走了多远:
idDict = {}
for line in file:
line = line.rstrip()
f = line.split()
id = f[0]
idDict[id] = idDict.get(id, 0) + 1
但是如果我已经在这里用cnt创建了字典,我不知道如何遍历每个id来进行sum和av计算:(