Menu
CoddyTech

按轴统计

本课属于 Coddy Machine Learning 学习旅程的“数据与图表”单元。第 12 课,共 60 课。

两家咖啡馆记录了 3 天的咖啡销量:每行对应一家咖啡馆,每列对应一天。轴决定相加的方向:

杯数表格,2 家咖啡馆,3 天。箭头沿着每列向下,指向每天的总数 80、85 和 60;沿着每行横向,指向两家咖啡馆的总数 99 和 126

按名称传递它:

cups = np.array([[30, 45, 24],
                 [50, 40, 36]])
print(cups.sum(axis=0))
print(cups.sum(axis=1))

这会打印:

[80 85 60]
[ 99 126]

你指定的轴会消失:axis=0 会折叠行,每列留下一个结果。在机器学习数据中,这意味着每个特征对应一个数值。

.argmax() 会告诉你最大值所在的位置:cups.sum(axis=0).argmax() 的结果是 1,所以是星期二。

challenge icon

挑战

简单

一家健身房统计了四周的访客人数。在 visits 中,每一行代表一周,每一列代表 days 中命名的一个工作日。打印:

  1. Per weekday: 每个工作日的平均值。
  2. Per week: 每周的平均值。
  3. Busiest day: 平均值最高的工作日名称。

将平均值四舍五入到小数点后 2 位。对于有两周数据的健身房:

Per weekday: [42.  51.  46.  63.5 70.5]
Per week: [53.6 55.6]
Busiest day: Fri

亲手试试

import numpy as np

days = ["Mon", "Tue", "Wed", "Thu", "Fri"]
visits = np.array([[52, 61, 48, 70, 66],
                   [58, 65, 51, 74, 69],
                   [49, 60, 47, 69, 71],
                   [55, 57, 50, 72, 60]])

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

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

数据与图表中的所有课

自己练习: Python 在线编译器