Menu
CoddyTech

新建列

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

表格里经常没有你需要的数值:它包含距离和时间,但没有速度。列运算会像数组运算一样逐行进行,不需要循环:

将 rides 表格绘制成网格,其中包含 rider、km 和 hours 列,右侧新增一个高亮的 speed 列,数值为 21.0、20.0 和 22.0,每行的计算方式都是用 km 除以 hours

rides = pd.DataFrame({
    "rider": ["Ana", "Ben", "Cleo"],
    "km": [42, 30, 66],
    "hours": [2, 1.5, 3],
})
rides["speed"] = rides["km"] / rides["hours"]
print(rides)

赋值给一个新名称会在右侧添加该列:

  rider  km  hours  speed
0   Ana  42    2.0   21.0
1   Ben  30    1.5   20.0
2  Cleo  66    3.0   22.0

数字也可以:rides["hours"] * 60 可以得到分钟数。赋值给一个已存在的名称会替换该列。

模型从类似速度这样的比率中学到的信息,往往比从构成它的两个原始数字中学到的更多。

challenge icon

挑战

中等

文具店将库存保存在 stock.csv 中,并加载到 stock,其中包含 product、price(每件商品的价格)和 quantity(货架上的商品数量)这些列。

  1. 添加一列 value:每种商品的价格乘以其数量。
  2. 打印 stock。
  3. 打印货架上商品的总价值,如下所示。

对于有两种商品的商店:

  product  price  quantity  value
0    tape    1.5        10   15.0
1    clip    0.5        30   15.0
Total value: 30.0

亲手试试

import pandas as pd

stock = pd.read_csv("stock.csv")

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

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

数据与图表中的所有课

自己练习: Python 在线编译器