Pandas:如何绘制值的数量(带有示例)
您可以使用 pandas 中的value_counts()函数来计算 DataFrame 给定列中值的出现次数。
您可以使用以下方法之一来绘制value_counts()函数产生的值:
方法1:按降序绘制值的数量
df. my_column . value_counts (). plot (kind=' bar ')
方法2:按升序绘制值的数量
df. my_column . value_counts (). sort_values (). plot (kind=' bar ')
方法 3:按照 DataFrame 中出现的顺序绘制值计数
df. my_column . value_counts ()[df. my_column . unique ()]. plot (kind=' bar ')
以下示例展示了如何在实践中使用以下 pandas DataFrame 的每种方法:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'B', 'B', 'C'], ' points ': [15, 12, 18, 20, 22, 28, 35, 40]}) #view DataFrame print (df) team points 0 to 15 1 to 12 2 B 18 3 B 20 4 B 22 5 B 28 6 B 35 7 C 40 #calculate occurrences of each value in 'team' column df. team . value_counts () B5 At 2 C 1 Name: team, dtype: int64
示例 1:按降序绘制值的数量
以下代码展示了如何按降序在条形图中绘制值的数量:
#plot value counts of team in descending order df. team . value_counts (). plot (kind=' bar ')
x 轴显示团队名称,y 轴显示每个团队的频率。
请注意,默认情况下,条形图按降序排序。
注意:如果您想创建水平条形图,只需在kind参数中将bar替换为barh即可。
示例 2:按升序绘制值的数量
以下代码展示了如何按升序在条形图中绘制值的数量:
#plot value counts of team in descending order df. team . value_counts (). sort_values (). plot (kind=' bar ')
请注意,条形现在按升序排序。
示例 3:按照值计数在 DataFrame 中出现的顺序绘制值计数
以下代码展示了如何根据值在 DataFrame 中出现的顺序在条形图中绘制值的数量:
#plot value counts of team in order they appear in DataFrame df. team . value_counts ()[df. team . single ()]. plot (kind=' bar ')
现在,条形图根据它们在 DataFrame 中出现的顺序进行排序。
例如,值“A”首先出现在团队列中,然后出现“B”,最后出现“C”。
这就是条形图在条形图中的放置顺序。
其他资源
以下教程解释了如何执行其他常见的 panda 任务: