如何计算Pandas列中特定值的出现次数

  • Post category:Python

当我们需要对 Pandas 数据框或者序列中特定值的出现次数进行统计时,我们可以使用 Pandas 的 value_counts 方法。

使用 value_counts 方法有两种方式:

  1. 对完整的数据框或者序列进行统计,返回每个值出现的次数。
  2. 对某一列或者几列进行统计,返回每个指定列中每个值出现的次数。

下面将分别讲解这两种方式的使用。

统计整个数据框或者序列中特定值的出现次数

import pandas as pd

# 创建示例数据框
df = pd.DataFrame({
  'Name': ['Alice', 'Bob', 'Charlie', 'Bob'],
  'Age': [25, 30, 18, 47],
  'Gender': ['F', 'M', 'M', 'M']
})

# 统计整个数据框中 'Bob' 出现的次数
df.values.flatten().tolist().count('Bob')

以上代码中,我们先创建了一个示例的数据框,然后使用 values.flatten().tolist().count() 方法来统计数据框中 ‘Bob’ 出现的次数。

其中 values.flatten() 将数据框转换为一维数组,tolist() 方法将其转换为列表,最后通过 count() 方法计算值为 ‘Bob’ 的元素出现的次数。

统计特定列中特定值的出现次数

import pandas as pd

# 创建示例数据框
df = pd.DataFrame({
  'Name': ['Alice', 'Bob', 'Charlie', 'Bob'],
  'Age': [25, 30, 18, 47],
  'Gender': ['F', 'M', 'M', 'M']
})

# 统计 'Name' 列中 'Bob' 出现的次数
df['Name'].value_counts()['Bob']

以上代码中,我们先创建了一个示例的数据框,然后使用 value_counts() 方法统计了 ‘Name’ 列中每个值出现的次数。最后我们可以通过用索引取值的方式,获取 ‘Bob’ 出现的次数。

需要注意的是,如果想在统计时只关注某几列,则可以使用 df[[column1, column2...]].value_counts() 的方式进行统计。

以上就是如何计算 Pandas 列中特定值的出现次数的攻略和实例说明。