为了找到最普通的东西,我知道我可以这样使用:
most_common = collections.Counter(list).most_common(to_find)
但是,我似乎找不到任何可比的东西,以找到最不常见的元素。
请给我有关如何做的建议。
借用collections.Counter.most_common
并适当地反转:
from operator import itemgetter
import heapq
import collections
def least_common_values(array, to_find=None):
counter = collections.Counter(array)
if to_find is None:
return sorted(counter.items(), key=itemgetter(1), reverse=False)
return heapq.nsmallest(to_find, counter.items(), key=itemgetter(1))
>>> data = [1,1,2,2,2,2,3,3,3,3,3,3,3,4,4,4,4,4,4,4]
>>> least_common_values(data, 2)
[(1, 2), (2, 4)]
>>> least_common_values([1,1,2,3,3])
[(2, 1), (1, 2), (3, 2)]
>>>
问题内容: 我明白 将导出列表中最常见的元素 但是如何在不使用辅助函数的情况下导出列表列表中最常见的元素? 例如 输出应等于。 当我尝试 它写道 谁能帮帮我吗? 问题答案: 有很多方法,但是我想让您知道,标准模块中有一些用于这类事情的好工具,例如: 或者,您可以(有点)将当前解决方案用于每个子列表:
问题内容: 这个问题已经在这里有了答案 : 在列表中找到出现次数最多的项目 (13个答案) 4个月前关闭。 给出以下列表 我正在尝试计算每个单词出现多少次并显示前3位。 但是,我只想查找首字母大写的前三位,而忽略不首字母大写的所有单词。 我敢肯定有比这更好的方法,但是我的想法是做以下事情: 将列表中的第一个单词放入另一个称为uniquewords的列表中 从原始列表中删除第一个单词及其所有重复单词
问题内容: 比较两个列表时,我需要获取不常见元素的列表。例如:- 在这里,我想要另一个列表中的readAllName列表(“ aaa”,“ ccc”,“ ddd”)中的不常见元素。不使用remove()和removeAll()。 问题答案: 假设期望的输出是(所有非常见项目),则可以使用,但是您需要使用两次,才能获得名称为name而不是name2的两个项目以及名称为name2而不是name2的项目
问题内容: 在Python列表中查找最常见元素的有效方法是什么? 我的列表项可能无法散列,因此无法使用字典。同样在绘制时,应返回索引最低的项目。例: 问题答案: 提出了这么多解决方案,令我惊讶的是没有人提出我认为很明显的解决方案(对于不可哈希但可比较的元素)-[ ] [1]。 提供快速,可重用的功能,并允许您将一些棘手的逻辑委托给经过良好测试的标准库组件。考虑例如: 当然,这可以写得更简洁一些,但
本文向大家介绍Python中如何获得列表的最后一个元素,包括了Python中如何获得列表的最后一个元素的使用技巧和注意事项,需要的朋友参考一下 在本教程中,我们将看到从列表中获取最后一个元素的不同方法。让我们一一看。 使用索引值 我们可以使用索引获取列表的最后一个元素。我们可以通过列表的长度来获取最后一个元素的索引。让我们看一下代码。 示例 输出结果 如果执行上述程序,则将得到以下结果。 使用负索
问题内容: 在Python列表中查找最常见元素的有效方法是什么? 我的列表项可能无法散列,因此无法使用字典。同样在绘制的情况下,应返回索引最低的项目。例: 问题答案: 提出了这么多解决方案,令我惊讶的是没有人提出我认为显而易见的解决方案(对于不可哈希但可比较的元素)-。 提供快速,可重用的功能,并允许你将一些棘手的逻辑委托给经过良好测试的标准库组件。考虑例如: 当然,这可以写得更简洁一些,但我的目