📌  相关文章
📜  在数组 python 中计算出现次数(1)

📅  最后修改于: 2023-12-03 15:08:02.790000             🧑  作者: Mango

在 Python 中计算数组中元素的出现次数

在 Python 中,有多种方法可以计算数组中元素的出现次数。下面介绍其中几种常用方法。

方法一:使用 collections 中的 Counter 函数

使用 collections 模块中的 Counter 函数可以很方便地统计数组中每个元素的出现次数。

首先,需要导入 collections 模块:

import collections

然后,将要统计的数组传入 Counter 函数中:

arr = [1, 2, 3, 2, 1, 1, 5, 2]
count = collections.Counter(arr)

此时,count 变量中存储的即为每个元素出现的次数:

print(count)
# 输出:Counter({1: 3, 2: 3, 3: 1, 5: 1})
方法二:使用 numpy 中的 unique 函数

使用 numpy 中的 unique 函数可以获取数组中所有元素的不重复值以及相应的出现次数。

首先,需要导入 numpy 模块:

import numpy as np

然后,将要统计的数组传入 unique 函数中,并将返回的 unique 数组和 counts 数组分别赋值给变量:

arr = [1, 2, 3, 2, 1, 1, 5, 2]
unique, counts = np.unique(arr, return_counts=True)

此时,unique 变量中存储的为数组中所有不重复的元素,counts 变量中存储的为每个元素出现的次数。

print("Unique values:", unique)
print("Counts:", counts)
# 输出:
# Unique values: [1 2 3 5]
# Counts: [3 3 1 1]
方法三:使用 pandas 中的 value_counts 函数

将数组转为 pandas 中的 Series 对象,再使用 value_counts 函数可以方便地计算每个元素的出现次数。

首先,需要导入 pandas 模块:

import pandas as pd

然后,将要统计的数组传入 Series 函数中:

arr = [1, 2, 3, 2, 1, 1, 5, 2]
s = pd.Series(arr)
count = s.value_counts()

此时,count 变量中存储的即为每个元素出现的次数:

print(count)
# 输出:
# 1    3
# 2    3
# 5    1
# 3    1
# dtype: int64

以上三种方法均可以方便地计算数组中元素的出现次数。根据具体情况选择合适的方法即可。