Menu
CoddyTech

认识企鹅

本课属于 Coddy Machine Learning 学习旅程的“监督学习”单元。第 50 课,共 58 课。

在第 1 单元中,你研究了 100 只企鹅。这个群体有 300 只企鹅,现在你要构建一个模型来给它们命名。你的模型将为她命名:

300 只企鹅以圆点表示,横轴为喙长,纵轴为鳍肢长:左下方是 Adelie,右下方是 Chinstrap,右上方是 Gentoo,它们之间有一颗标注着“她是谁?”的大黑星。

每个项目都从观察开始。每种物种各有多少?这决定了要超越的分数。有哪些空缺?什么特征能区分不同物种?

散点图回答了上一个问题。根据鳍肢和体重可以找到 Gentoo,而不是其他企鹅:

群体中鳍肢长度与体重的关系:Gentoo 的点彼此分开,位于较高且靠右的位置,而 Adelie 和 Chinstrap 的点重叠在一起,形成一团

模型只能学到测量结果所显示的内容,所以它需要的不止这两个。

challenge icon

挑战

中等

你的企鹅群体数据在 penguins.csv 中。程序会读取两列测量数据,起始代码已为它们设置好图表。

  1. 打印需要超越的基准:物种占比的最大值,保留 3 位小数,并打印该物种。
  2. 打印每个有缺失值的列及缺失数量:下一课会填补这些缺失值。
  3. 绘制这两列数据的散点图,每个物种对应一组,并以物种名称作为标签。添加图例并显示图表。

对于较小的企鹅群体:

Baseline to beat: 0.483 (always Adelie)
Gaps to fill:
  body_mass_g: 1
  sex: 4

然后 Coddy 会描述你的图表。对于 body_mass_g 和 bill_length_mm,图表如下:

标题为 body_mass_g vs bill_length_mm 的散点图,带有图例:Adelie 的点较低且颜色较浅,Chinstrap 的点较高且颜色较浅,Gentoo 的点较重且位于右侧

亲手试试

import pandas as pd
import matplotlib.pyplot as plt

penguins = pd.read_csv("penguins.csv")
x_col = input()
y_col = input()

# 不要修改下面的代码行
fig, ax = plt.subplots()
ax.set_title(f"{x_col} vs {y_col}")
ax.set_xlabel(x_col)
ax.set_ylabel(y_col)

# 在下面编写你的代码
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

监督学习中的所有课

自己练习: Python 在线编译器