当前位置: 首页 > 编程笔记 >

python 统计list中各个元素出现的次数的几种方法

符俊材
2023-03-14
本文向大家介绍python 统计list中各个元素出现的次数的几种方法,包括了python 统计list中各个元素出现的次数的几种方法的使用技巧和注意事项,需要的朋友参考一下

利用字典dict来完成统计

举例:

a = [1, 2, 3, 1, 1, 2]
dict = {}
for key in a:
  dict[key] = dict.get(key, 0) + 1
print dict

输出结果:

>>>{1: 3, 2: 2, 3: 1}

利用Python的collection包下Counter的类

举例:

from collections import Counter
a = [1, 2, 3, 1, 1, 2]
result = Counter(a)
print result

输出结果:

>>>{1: 3, 2: 2, 3: 1}

Python的pandas包下的value_counts方法

举例:

import pandas as pd
a = [1, 2, 3, 1, 1, 2]
result = pd.value_counts(a)
print result

输出结果:

>>>1    3
   2    2
   3    1

注:利用pandas下的value_counts(),不仅可以统计list中各个元素出现的个数,还可对矩阵中的元素进行进行统计。
举例:

import pandas as pd
a = pd.DataFrame([[1,2,3],
     [3,1,3],
     [1,2,1]])
result = a.apply(pd.value_counts)
print result

输出结果:

    0    1    2
1  2.0  1.0  1.0  # 表示元素1在第一列出现2次,在第二列出现1次,在第三列出现1次
2  NaN  2.0  NaN  # 表示元素2在第一列出现0次,在第二列出现2次,在第三列出现0次
3  1.0  NaN  2.0  # 表示元素3在第一列出现1次,在第二列出现0次,在第三列出现2次

到此这篇关于python 统计list中各个元素出现的次数的几种方法的文章就介绍到这了,更多相关python 统计list次数内容请搜索小牛知识库以前的文章或继续浏览下面的相关文章希望大家以后多多支持小牛知识库!

 类似资料:
  • 本文向大家介绍Python统计日志中每个IP出现次数的方法,包括了Python统计日志中每个IP出现次数的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Python统计日志中每个IP出现次数的方法。分享给大家供大家参考。具体如下: 这脚本可用于多种日志类型,本人测试MDaemon的all日志文件大小1.23G左右,分析用时2~3分钟 代码很简单,很适合运维人员,有不足的地方请大家指出

  • 本文向大家介绍python 统计一个列表当中的每一个元素出现了多少次的方法,包括了python 统计一个列表当中的每一个元素出现了多少次的方法的使用技巧和注意事项,需要的朋友参考一下 如下所示: 运行结果: 以上这篇python 统计一个列表当中的每一个元素出现了多少次的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持呐喊教程。

  • 本文向大家介绍手写代码:统计排序数组中出现次数最多的元素出现的次数?相关面试题,主要包含被问及手写代码:统计排序数组中出现次数最多的元素出现的次数?时的应答技巧和注意事项,需要的朋友参考一下 参考回答:      

  • 所以现在我有一个 Arraylist包含以下值 我想找到独特的疫苗类型的数量以及它的频率。因此,例如,这个arraylist应该返回如下内容 理想的情况是它自己独立的数据结构(数组)。我尝试使用哈希列表,但不支持arraylist的格式化方式。 我得到错误“the hashlist Conly be Resolve to Type”。

  • 本文向大家介绍浅谈python中统计计数的几种方法和Counter详解,包括了浅谈python中统计计数的几种方法和Counter详解的使用技巧和注意事项,需要的朋友参考一下 1) 使用字典dict() 循环遍历出一个可迭代对象中的元素,如果字典没有该元素,那么就让该元素作为字典的键,并将该键赋值为1,如果存在就将该元素对应的值加1. 2) 使用defaultdict() defaultdict(

  • 找出 第1列中的最大值第一次出现的位置, 比方说这个 是索引19中的 27.78 从这个索引19 开始 往下 寻找第1列中所有介于27.78的值区间出现的次数 比方说 从 索引19 开始 往下查询 从索引24到326区间的值小于27.78 把这个区间作为 次数 1 516-519 这个区间作为 2 523-760区间作为3, 769-772 作为4 774-1114 作为5,共出现5次在这个区间的