📌  相关文章
📜  在 NumPy 数组中查找最频繁的值

📅  最后修改于: 2022-05-13 01:54:20.749000             🧑  作者: Mango

在 NumPy 数组中查找最频繁的值

在本文中,我们将讨论如何在 NumPy 数组中找到最频繁的值。

在 NumPy 数组中查找频率最高值的步骤:

  • 创建一个 NumPy 数组。
  • 应用 NumPy 的 bincount() 方法来获取数组中每个元素的出现次数。
  • n,应用 argmax() 方法来获取具有最大出现次数(频率)的值。

示例 1:

Python3
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())


Python3
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

此代码将仅生成单个输出,如果数组包含多个具有最大频率数的元素,它将无法正常工作。

示例 2:如果数组具有多个具有最大频率的元素

Python3

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