如何计算Pandas数据框架列的不同值

  • Post category:Python

计算 Pandas 数据框架列的不同值可以使用 value_counts() 函数。该函数可用于计算数据框架某一列中不同值出现的个数,并返回计数结果及相应的索引。

以下是使用 value_counts() 函数的步骤:

  1. 使用 read_csv() 函数将 CSV 文件转换为 Pandas 数据框架对象。
import pandas as pd
df = pd.read_csv('file.csv')
  1. 以列名为参数,调用 value_counts() 函数进行计数,并保存结果。
counts = df['column_name'].value_counts()
  1. 结果将是一个 Pandas 序列对象,其中索引是不同的值,值是每个值出现的次数。它可以通过索引或描述性统计来访问和操作。

例如,假设存在名为 grades.csv 的文件,包含学生姓名、科目和成绩。要计算每个科目下各个成绩出现的次数,可以使用以下代码:

import pandas as pd
df = pd.read_csv('grades.csv')
counts = df['subject'].value_counts()
print(counts)

输出结果将如下所示:

Math    5
English 4
Science 3
Name: subject, dtype: int64

其中,索引是科目名称,值是该科目下不同成绩值出现的次数。例如,在 Math 科目中,出现了 5 种不同的成绩。可以通过 counts['Math']counts.loc['Math'] 获得这个值。

注意,Pandas 默认将字符串值排在值计数结果的首位,因此您不需要为数据预处理。如果您希望按照值的出现次数对值进行排序,则可以传递额外的参数 sort=Truevalue_counts() 函数。