单元一
第3课 数据:X、y、特征与标签

一、任务目标
亲手写一张小表,并打开鸢尾花数据看形状。
二、核心概念讲清楚
监督式学习里:特征 X 描述样本,标签 y 是要预测的答案。X 常是二维表(行=样本,列=特征),y 是一维。
- 特征 X:用来描述的数字
- 标签 y:类别或数值答案
- 可用手写小表,也可用 load_iris() 等自带数据
1定问题要预测什么?
2选特征哪些数字能描述样本
3对齐标签每个样本一个 y
4检查形状样本数与 y 长度一致
三、跟着想一遍(小例子)
手写 X=[[1,0.3],[2,0.5],[4,0.8],[5,0.9]],y=[0,0,1,1]:4 个样本、2 个特征;len(X)==len(y)。
易错:X 有 4 行但 y 只有 3 个,或把 y 写成二维搞混。
正确:保证样本数一致;先 print(len(X), len(y)) 自检。
想一想:预测「是否及格」时,作业完成率更像 X 还是 y?(提示:用来描述的是 X,及格与否是 y。)
四、解题思路
任务:亲手写一张小表,并打开鸢尾花数据看形状。 先想清楚:输入是什么、处理后得到什么、屏幕上应出现什么。
本课主要用到:屏幕输出。
- 1明确任务「亲手写一张小表,并打开鸢尾花数据看形状。」:运行后你希望看到什么结果(文字、图形或计算结果)。
- 2用 print 把结果说出来,确认屏幕上出现预期内容。
- 3对照参考代码跑通后,只改一个参数,观察结果如何变化。
流程示意(可对照左侧文字)
五、语句功能讲解
下面只列出本课首次出现的语句/函数。已在前面课讲过的不再重复;先认新语句,再对照参考代码。
| 语句 | 作用 | 本课用法 |
|---|---|---|
len() | 求长度 | 字符串字符数或列表元素个数。 |
shape() | 数组形状 | 彩色图常见 (高, 宽, 通道)。 |
六、知识点讲解
特征是从原始数据里抽出、对判断有用的量;标签是我们想预测的答案。分类就是根据特征给样本贴标签。特征选不好,后面模型再复杂也难做好。
先弄清本课输入与输出,再进编程练习对照现象。
七、编程练习
先理解上面的例子,再在下方 Mixly 运行与检查(含 scikit-learn)。
看清样本数与特征维数。
参考代码(对照抄写到下方 Mixly)
# 手写小数据集:学习时长(小时)、作业完成率 → 是否及格(0/1)
X = [
[1, 0.3],
[2, 0.5],
[4, 0.8],
[5, 0.9],
]
y = [0, 0, 1, 1]
print("样本数:", len(X))
print("特征维数:", len(X[0]))
print("第1条特征:", X[0], "标签:", y[0])
正在载入编程环境
正在载入 Mixly 文本编程环境…
八、课堂练习
先完成两道正误判断,再做其余题目;选出后点「检查」。
判断:只抄参考代码,不看运行输出,也不改参数验证。
判断:先跑通,再对照「特征 X」改一处输入/参数,确认输出按预期变化;答错小测时读讲解。
在监督学习里,标签 y 通常表示?
X 的一行通常代表?
九、本节小结
X 是特征表,y 是答案列。