总体与样本
本课属于 Coddy Machine Learning 学习旅程的“机器学习统计学”单元。第 19 课,共 64 课。
称量 300 棵树上的苹果需要几天,称量 20 棵树上的苹果只需一小时。所有树构成总体,这 20 棵树是样本:
rng.choice 抽取样本。replace=False 表示每棵树最多只选一次,就像从帽子里抽名字一样:
rng = np.random.default_rng(4)
trees = np.round(rng.normal(40, 8, size=300), 1) # 苹果的重量,单位为 kg
sample = rng.choice(trees, size=20, replace=False)
print(np.round(trees.mean(), 2))
print(np.round(sample.mean(), 2))输出结果:
40.82
38.49样本均值用于估计总体均值:接近,但不相等。每个 ML 数据集都是一个样本,本章最后会对整个城镇进行民意调查。
挑战
中等一家羊毛农场想知道 3000 只羊的羊毛平均重量,但不想给每只羊称重。在这个模拟中,fleeces 保存了每只羊的羊毛重量,单位是克,程序会读取样本数量。
- 使用
rng.choice抽取这么多只不同的羊作为样本。 - 打印样本的平均值、所有羊的平均值,以及两者相差多少(样本平均值减去所有羊的平均值),保留 2 位小数。
对于另一家农场,输入 30:
Sample of 30 sheep: 4371.33 g
All 3000 sheep: 4311.47 g
Off by: 59.86 g亲手试试
import numpy as np
size = int(input())
# 不要修改下面的代码:它们记录了农场里每只羊的羊毛重量,单位是克。
rng = np.random.default_rng(19)
fleeces = np.round(rng.normal(4500, 800, size=3000))
# 在下面编写你的代码。
这节课包含一个小测验。开始学习即可作答,并记录你的进度。
机器学习统计学中的所有课
自己练习: Python 在线编译器