在字典中查找最不频繁的值

jle*_*lee 3 python dictionary

我正在研究一个问题,要求我在字典中返回最不频繁的值,除了几个不同的计数之外我似乎无法解决它,但字典中没有一定数量的值在支票中提供.

例如,假设字典包含从学生姓名(字符串)到其年龄(整数)的映射.您的方法将返回最不常见的年龄.考虑包含以下键/值对的字典变量d:

{'Alyssa':22,'Char':25,'Dan':25,'Jeff':20,'Kasey':20,'Kim':20,'Mogran':25,'Ryan':25,'燕姿":22}

三个人年龄为20岁(Jeff,Kasey和Kim),两个人年龄为22岁(Alyssa和Stef),四个人年龄为25岁(Char,Dan,Mogran和Ryan).最稀有的(d)返回22,因为只有两个人是那个年龄.

有人会介意我指出正确的方向吗?谢谢!

Rob*_*obᵩ 8

计算集合的成员是collections.Counter:

d={'Alyssa':22, 'Char':25, 'Dan':25, 'Jeff':20, 'Kasey':20, 'Kim':20, 'Mogran':25, 'Ryan':25, 'Stef':22}
import collections
print collections.Counter(d.values()).most_common()[-1][0]
22
Run Code Online (Sandbox Code Playgroud)

  • 请记住*投票*以获取有用的所有答案,并*接受*最能回答您问题的答案. (3认同)