寻找NumPy数组中最频繁的值
在这篇文章中,让我们讨论如何在NumPy数组中找到最频繁的值。
在NumPy数组中找到最频繁的值的步骤:
- 创建一个NumPy数组。
- 应用NumPy的bincount()方法,得到数组中每个元素出现的次数。
- n,应用argmax()方法获得具有最大出现次数(频率)的值。
示例 1:
import numpy as np
# create array
x = np.array([1,2,3,4,5,1,2,1,1,1])
print("Original array:")
print(x)
print("Most frequent value in the above array:")
print(np.bincount(x).argmax())
输出:
1
这段代码将只产生一个输出,如果数组中包含多个具有最大频率的元素,它将无法正常工作。
实例2:如果数组中有一个以上的元素具有最大的频率
import numpy as np
x = np.array([1, 1, 1, 2, 3, 4, 2, 4, 3, 3, ])
print("Original array:")
print(x)
print("Most frequent value in above array")
y = np.bincount(x)
maximum = max(y)
for i in range(len(y)):
if y[i] == maximum:
print(i, end=" ")
输出:
1 3