Menu
CoddyTech

销售报告

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

一家家具店将 3 月的订单记录在 sales.csv 中,每行对应一笔订单:date、region、product、units、price 和 cost(两者均为单价)。

每位区域经理都想要一张图表:按产品显示利润,利润最高的排在最前面。这是东区的图表:

一张标题为“东区利润”的柱状图:五种产品按利润从高到低排列,书桌 414、椅子 408、台灯 363、书架 337.5,地毯 250

订单的利润就是商店赚到的钱:售价减去成本,再乘以数量。

challenge icon

挑战

困难

程序会读取一个区域。

  1. 保留该区域的订单,并添加一个 profit 列。
  2. 按产品汇总利润,并按从大到小排序。
  3. 打印订单数量,然后打印利润最高的产品及其总利润,以及它占该区域利润的百分比,四舍五入到小数点后 1 位。
  4. 使用 fig, ax 形式将总利润绘制为柱状图,标题为 Profit in 加上区域名称,标签为 Product 和 Profit。

对于 East,完整输出如下:先是你的两行输出,然后是 Coddy 对图表的描述。

Orders in East: 13
Most profit in East: Desk (414.0), 23.4% of the region
Charts drawn: 1
Title: Profit in East
X label: Product
Y label: Profit
Bars: 5
Categories: Desk, Chair, Lamp, Shelf, Rug
Heights: [414, 408, 363, 337.5, 250]

亲手试试

import pandas as pd
import matplotlib.pyplot as plt

region = input()

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

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

数据与图表中的所有课

自己练习: Python 在线编译器