相关不等于因果
本课属于 Coddy Machine Learning 学习旅程的“机器学习统计学”单元。第 33 课,共 64 课。
r 只能识别直线关系。这里,y 完全由 x 决定,但 r 却是 0:
下降的一半会抵消上升的一半。接近 0 的 r 表示没有直线关系,并不表示没有关联:删除特征前先绘图。
一个很远的点就能让 r 看起来很强,所以要先检查离群点:
最后,r 永远不能证明因果关系。年龄较大的孩子鞋码更大,阅读能力也更强:年龄这个隐藏的第三个变量同时影响了两者。
挑战
中等一家茶店测试茶杯:9 杯的数据使用 steep 和 taste(浸泡分钟数、评分),另外 10 杯的数据使用 sugar 和 score(方糖数、评分)。程序会读取另一杯茶的方糖数,然后读取评分。
- 输出
steep和taste的r。 - 输出
sugar和score的r,然后输出加上这杯茶后的结果。
四舍五入到小数点后 2 位,并按下方格式标注。对于另一家店和额外的一杯茶 10、2.0:
Steeping r: -0.05
Sugar r: -0.23
Sugar r with the extra cup: -0.88亲手试试
import numpy as np
# 9 杯茶的浸泡时间(分钟)和口味评分
steep = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
taste = np.array([3.1, 5.0, 6.6, 7.7, 8.1, 7.6, 6.5, 5.1, 3.4])
# 另外 10 杯茶的方糖数量和口味评分
sugar = np.array([0, 2, 1, 3, 0, 2, 1, 3, 2, 1])
score = np.array([6.5, 5.8, 7.4, 6.1, 5.9, 7.0, 6.2, 6.8, 6.4, 5.7])
# 额外的一杯茶
extra_sugar = float(input())
extra_score = float(input())
# 在下方编写代码
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
机器学习统计学中的所有课
自己练习: Python 在线编译器