我在Python3中较新,现在陷入了一个问题。
问题陈述:我有一个defaultdict,其中一个键有多个值。在这些多个值中,存在相似和不同的值。
现在,我想获取每个键的摘要(基于唯一记录的计数数)。
字典(命名为“ d”),如下所示defaultdict(,{'0':['“ 126”},','“ 115”},','“ 60”},'],'1':[' “ 126”},'],'2':['“ 126”},','“ 126”},','“ 126”},','“ 148”},','“ 99”} ,'],'3':['“ 126”},','“ 226”},'],'4':['“ 126”},','“ 90”},'],})
预期产量:
0: countALL :3; 1: countALL :1; 2: countALL :3; 3: countALL :2; 4: countALL :2;
例如,对于键“ 2”,有3条记录,分别为126、148中的1和99中的1。因此,由于存在三种类型的唯一记录,因此摘要将为3。
这是供我研究使用的Python3程序,用于区分来自网络的不同类型的流量。
预期结果:
0: countALL :3; 1: countALL :1; 2: countALL :3; 3: countALL :2; 4: countALL :2;
最佳答案
这是我对您的问题的解释的答案,尽管我的解释可能不正确。
from collections import Counter
data = {1: [2,3,4,3,4], 2: [6,5,3,5]}
for key, values in data.items():
print(f'{key} has the following unique counts {Counter(values)}')
输出以下内容:
1 has the following unique counts Counter({3: 2, 4: 2, 2: 1})
2 has the following unique counts Counter({5: 2, 6: 1, 3: 1})