葡萄酒化学
本课属于 Coddy Machine Learning 学习旅程的“机器学习统计学”单元。第 63 课,共 64 课。
一位葡萄酒进口商测试了来自 3 种葡萄品种的 178 种葡萄酒,每种酒都测了 13 项化学指标:load_wine。在模型学习这些葡萄品种之前,实验室会先查找仪器测量误差。
这些读数所处的量尺差异很大,因此没有一种离群值规则适用于所有读数。标准化后,每个读数都表示为距离其均值多少个标准差。
在这条标尺上,任一侧距离超过 3 的值都值得再看一眼。然后,每个栽培品种对应的箱线图会显示它通常所处的位置。
挑战
困难程序会读取一个特征的名称。
- 使用 pandas 的
.std(),将它的 z 分数存入df["z"]。 - 打印超出 3 个标准差的葡萄酒数量(包括两侧),然后按表格顺序打印每个结果:索引、读数和 z 值。
- 打印每个品种的平均 z 值。
- 为每个品种绘制一个 z 分数箱线图,使用
wine.target_names作为名称,以特征名作为标题,并将z-score作为 y 轴标签。
四舍五入到小数点后 2 位。对于 color_intensity,程序会打印:
Outliers in color_intensity: 1
Wine 158: 13.0 (z = 3.43)
class_0: 0.2
class_1: -0.85
class_2: 1.01并绘制:
然后 Coddy 会描述你的箱线图。
亲手试试
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_wine
feature = input()
wine = load_wine(as_frame=True)
df = wine.frame
# 在下方编写代码
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
机器学习统计学中的所有课
自己练习: Python 在线编译器