探索分类数据
简介
分类数据是一种取固定数量的值的数据类型,并且这些变量之间不存在逻辑顺序。分类变量可以是血型、是非情况、性别、排名(例如,第一、第二、第三)等。分类变量大多数情况下会进行编码,例如独热编码和名义编码,以便以二进制或整数格式表示它们,以满足所考虑的机器学习用例。
分类数据和相关术语
众数是与分类变量/观测值相关的最常见的集中趋势。它是观测值集中出现频率最高的那个值。
例如,
在以下数据集 [1,2,6,7,7,7,2,6,6,6,6] 中,众数是 6,因为它出现了 5 次,是所有其他变量中出现次数最多的。
分类数据分析
使用条形图 − 条形图可以用来显示每个分类变量的频率。
以下代码绘制了五个学生的条形图或频率分布图以及他们在测试中获得的分数。条形图是使用 matplotlib 库绘制的。
import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline students = ['Saurav','Mohit','Rajan','Aditi','Sonal'] marks = [78,98,65,90,80] plt.bar(students, marks) plt.xlabel('Student', fontsize = 10) plt.ylabel('Marks', fontsize = 10) plt.title('Student marks distribution')
输出
饼图 − 饼图用于以圆形角度的形式显示数据或分类变量占整体的百分比。
以下代码绘制了五个学生的饼图以及他们在测试中获得的分数。饼图也是使用 matplotlib 库绘制的。
import pandas as pd import numpy as np import matplotlib.pyplot as plt %matplotlib inline students = ['Saurav','Mohit','Rajan','Aditi','Sonal'] marks = [78,98,65,90,80] plt.figure(figsize =(5, 5)) plt.pie(marks, labels = students, startangle = 90, autopct ='%.2f %%') plt.show()
输出
箱线图 − 它用于显示数据的分布并比较不同组之间的数据。
以下代码绘制了五个学生的箱线图以及他们在测试中获得的分数。Matplotlob 用于绘制图形。
import seaborn as sns import matplotlib.pyplot as plt %matplotlib inline data = pd.read_csv("/content/train.csv") sns.boxplot(data = data, x='Street', y='SalePrice')
输出
小提琴图 − – 它用于可视化分类数据的分布并定义核密度图。
以下代码绘制了五个学生的提琴图以及他们在测试中获得的分数。
import seaborn as sns import matplotlib.pyplot as plt %matplotlib inline data = pd.read_csv("/content/train.csv") sns.violinplot(data = data, x='Street', y='SalePrice')
输出
结论
分类数据可以用各种形式表示和探索。在处理分类数据时,条形图、饼图、箱线图和小提琴图往往非常有助于表示数据并从中获得见解。
广告