特征和标签
本课属于 Coddy Machine Learning 学习旅程的“数据与图表”单元。第 53 课,共 60 课。
模型通过输入和答案进行学习,所以你要给它两样东西:X,即特征;以及 y,即标签,每个样本对应一个:
使用 as_frame=True 加载的数据集已同时准备好:
iris = load_iris(as_frame=True)
X = iris.data
y = iris.target
print(X.shape, y.shape)输出结果为:
(150, 4) (150,)X 的第 i 行表示一朵花,y[i] 表示它的品种。标签不能放在 X 中:能读取答案的模型什么也学不到。
然后用 y.value_counts() 统计各个类别的数量:iris 中每个类别都有 50 个样本,这是一个平衡的数据集。
挑战
中等scikit-learn 中的手写数字图像是 8×8 像素的图片,每张图片都存储为 64 个像素数值(即特征),并标注了图片所显示的数字:
队友拆分的数据打印出 X: (1797, 65):他们的 X 仍然包含答案。
- 修正
X,使其只包含 64 个像素特征。 - 在准备好的语句下方,打印程序读取的数字
d出现的样本数量。
对于输入 3:
X: (1797, 64)
y: (1797,)
Samples of digit 3: 183亲手试试
from sklearn.datasets import load_digits
digits = load_digits(as_frame=True)
d = int(input())
# 特征和标签
X = digits.frame
y = digits.target
# 不要修改下面的代码行
print(f"X: {X.shape}")
print(f"y: {y.shape}")
# 在下面编写你的代码
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
数据与图表中的所有课
自己练习: Python 在线编译器