gpt4 book ai didi

Python 获取字典中的最高值

转载 作者:太空宇宙 更新时间:2023-11-04 10:07:42 24 4
gpt4 key购买 nike

我有一个名为 wordCounts 的字典,它将一个单词映射到它出现的次数,我怎样才能在允许超过 n 如果有平局?

最佳答案

正如前面的答案所说,您可以转换为 Counter 以使此数据集更易于处理。

>>> from collections import Counter
>>> d = {"d":1,"c":2,"a":3,'b':3,'e':0,'f':1}
>>> c = Counter(d)
>>> c
Counter({'b': 3, 'a': 3, 'c': 2, 'f': 1, 'd': 1, 'e': 0})

Counter 有一个 most_common(n) 方法,它将获取 n 最常见的元素。请注意,它将排除 关系。因此:

>>> c.most_common(4)
[('b', 3), ('a', 3), ('c', 2), ('f', 1)]

包括所有等于第 n 个元素的值,您可以执行类似以下的操作,而无需转换为 Counter。这相当困惑,但它应该可以解决问题。

from collections import Counter

def most_common_inclusive(freq_dict, n):
# find the nth most common value
nth_most_common = sorted(c.values(), reverse=True)[n-1]
return { k: v for k, v in c.items() if v >= nth_most_common }

您可以按如下方式使用:

>>> d = {'b': 3, 'a': 3, 'c': 2, 'f': 1, 'd': 1, 'e': 0}
>>> most_common_inclusive(d, 4)
{'d': 1, 'b': 3, 'c': 2, 'f': 1, 'a': 3}

关于Python 获取字典中的最高值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40050154/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com