numpy如何查找数组中个数最多的元素
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了numpy如何查找数组中个数最多的元素相关的知识,希望对你有一定的参考价值。
import numpy as npb=np.array([[0, 4, 4],[2, 0, 3],[1, 3, 4]])
print('b=')
print(b)
l=sorted([(np.sum(b==i),i) for i in set(b.flat)])
'''
np.sum(b==i) #统计b中等于i的元素个数
set(b.flat) #将b转为一维数组后,去除重复元素
sorted() #按元素个数从小到大排序
l[-1] #取出元素个数最多的元组对 (count,element)
'''
print('max times of element in b is 1 with 0 times'.format(*l[-1]))
[willie@localhost pys]$ python3 countnumpy.py
b=
[[0 4 4]
[2 0 3]
[1 3 4]]
max times of element in b is 4 with 3 times
参考技术A 定义二维数组a定义一个四个元素的一维数组b,初始值为二维数组前四个元素,由小到大排序。
从二维数组第五个元素开始遍历二维数组,逐一与b[3]比较,如果比b[3]小,则加入到b中,保持b的四个元素有序,同时抛弃原始的b[3]
遍历结束后,还存在b中的四个元素,就是最小的四个了。本回答被提问者采纳
以上是关于numpy如何查找数组中个数最多的元素的主要内容,如果未能解决你的问题,请参考以下文章
在c#中找出一个数组中出现次数最多的元素,求各种方法,要详细的代码