Pandas 和Matplotlib绘制分类数据

Pandas 和Matplotlib绘制分类数据

在本文中,我们将介绍如何使用Pandas和Matplotlib绘制分类数据。分类数据可以包含有限个元素,例如颜色(红、绿、蓝)或血型(A、B、AB、O)。在Pandas中,可以使用Category数据类型来处理分类数据。

阅读更多:Pandas 教程

创建分类数据

首先,我们需要创建一些分类数据。我们可以使用Pandas的Category数据类型来创建分类数据。下面是一个例子:

import pandas as pd

colors = pd.Series(['red', 'green', 'blue', 'red'], dtype='category')
print(colors)

输出结果为:

0      red
1    green
2     blue
3      red
dtype: category
Categories (3, object): ['blue', 'green', 'red']

我们可以看到,Pandas自动检测到共有三个不同的颜色,并将它们放入了一个分类中。我们可以使用categories属性来查看分类中的元素:

print(colors.cat.categories)

输出结果为:

Index(['blue', 'green', 'red'], dtype='object')

绘制分类数据

接下来,我们可以使用Matplotlib来绘制这些分类数据。我们可以使用value_counts()函数来计算每个分类的数量,然后将其作为一个条形图来绘制:

import matplotlib.pyplot as plt

count = colors.value_counts()
plt.bar(count.index, count.values)
plt.show()

我们也可以绘制一个饼图来显示每个颜色所占的比例:

plt.pie(count.values, labels=count.index, autopct='%1.1f%%')
plt.show()

重新排序和添加缺失分类

有时候我们希望按照特定的顺序来绘制分类数据。我们可以使用reorder_categories()函数来重新排序分类:

colors = colors.cat.reorder_categories(['red', 'green', 'blue'])
count = colors.value_counts()

plt.bar(count.index, count.values)
plt.show()

我们还可以使用add_categories()函数来添加新的分类:

colors = colors.cat.add_categories(['yellow'])
colors[4] = 'yellow'

count = colors.value_counts()
plt.pie(count.values, labels=count.index, autopct='%1.1f%%')
plt.show()

总结

本文介绍了如何使用Pandas和Matplotlib绘制分类数据。我们首先使用Category数据类型来创建分类数据,然后使用Matplotlib来绘制条形图和饼图。我们还讨论了如何重新排序和添加缺失分类。分类数据在数据分析和可视化中广泛使用,掌握相关的技能是非常有用的。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程