期末复习-数据导入与预处理
Published in:2024-01-10 | category: Final Review
Words: 1.6k | Reading time: 6min | reading:

数据导入与预处理

使用到的数据集

在 Apple Silicon 的 MAC 上使用 spoon

打开一个终端输入

1
2
3
4
5
6
7
arch -x86_64 /bin/zsh --login
# 临时导入spoon需要依赖到的jdk版本`${JAVA_HOME}`自行替换
export JAVA_HOME=${JAVA_HOME}
# 将jdk添加到环境变量中
export PATH="${JAVA_HOME}/bin:$PATH"
# 这里对应spoon.sh启动文件的位置`${data-integration}`自行替换
sh ${data-integration}/spoon.sh

2018 年各售货机的销售金额

完整流程如下

2018年各售货机的销售金额完整流程
  1. csv文件输入(订单)

    1. 找到需要导入的文件名order_details.csv
    2. 获取字段。
    3. createdtime字段的类型修改为string,并将格式清空。
    4. 修改文件编码为GBK
  2. 剪切字符串

    # 输入流字段 输出流字段 起始位置 结束位置
    1 createdtime order_data 0 10
    2 createdtime order_month 0 7
    3 createdtime 年份 0 4
  3. 过滤记录

    1
    2
    3
    年份 = [2018]
    AND
    status = [SUCCESS]
  4. 字段选择

    # 字段名称 改名成 长度 精度
    1 boxid 售货机ID
    2 ordernum order_num
    3 amount product_number
    4 productpaytotalprice product_paytotalprice
    5 costprice cost_price
    6 saleprice sale_price
    7 productdiscountprice product_discountprice
    8 paytotalprice pay_totalprice
    9 年份
  5. csv文件输入(售货机)

    1. 找到需要导入的文件名box_list.csv
    2. 获取字段。
    3. 修改文件编码为GBK
  6. 记录关联(笛卡尔输出)

    1. 条件:售货机ID = boxid
  7. 字段选择

    # 字段名称 改名成 长度 精度
    1 boxid 售货机ID
    2 address 售货机地址
    3 name 售货机名称
    4 order_num 订单号
    5 product_number 商品数量
    6 product_paytotalprice 商品支付金额 15 2
    7 cost_price 商品成本价 10 2
    8 sale_price 商品销售价 10 2
    9 product_discountprice 商品优惠金额 15 2
    10 pay_totalprice 订单支付金额 15 2
    11 年份
  8. 排序记录

    字段名称:订单号,升序:是

  9. 去除重复记录

    字段名称:订单号,忽略大小写:N

  10. 排序记录

    字段名称:售货机ID,升序:是

  11. 分组

    分组字段:售货机ID、售货机名称

    # 名称 Subject 类型
    1 售货机订单数 订单号 个数
    2 售货机销售金额 订单支付金额 求和
  12. 排序记录

    字段名称:售货机销售金额,升序:否

  13. Microsoft Excel output

    1. 指定文件名
    2. 在字段栏目中获取字段

2018年各售货机每月的订单数

完整流程如下

  1. csv文件输入

    1. 找到需要导入的文件名order_list.csv
    2. 获取字段。
    3. createdtime字段的类型修改为string,并将格式清空。
    4. 修改文件编码为GBK
  2. 剪切字符串

    # 输入流字段 输出流字段 起始位置 结束位置
    1 createdtime 日期 9 10
    2 createdtime 月份 5 7
    3 createdtime 年份 0 4
  3. 过滤记录

    1
    2
    3
    4
    5
    年份 = [2018]
    AND
    status = [SUCCESS]
    AND
    customerid IS NOT NULL
  4. 字段选择

    # 字段名称 改名成 长度 精度
    1 ordernum 订单号
    2 paytotalprice 实际销售金额
    3 月份
    4 boxid 售货机ID
  5. 排序记录

    字段名称:售货机ID,升序:否

  6. 分组

    分组字段:售货机ID、月份

    # 名称 Subject 类型
    1 客户订单数 订单号 个数
  7. 排序记录

    字段名称:售货机ID,升序:否
    字段名称:月份,升序:是

  8. Microsoft Excel output

    1. 指定文件名
    2. 在字段栏目中获取字段

撤掉5台销售不佳的售货机

完整流程如下

  1. csv文件输入

    1. 找到需要导入的文件名order_details.csv
    2. 获取字段。
    3. 修改文件编码为GBK
  2. 过滤记录

    1
    status = [SUCCESS]
  3. 字段选择

    # 字段名称 改名成 长度 精度
    1 boxid 售货机ID
    2 ordernum 订单数量
    3 amount 商品数量
    4 productpaytotalprice 实际支付总金额
    5 costprice 成本价
    6 saleprice 销售价
    7 productdiscountprice 优惠金额
    8 paytotalprice 实际支付金额
  4. csv文件输入

    1. 找到需要导入的文件名box_list.csv
    2. 获取字段。
    3. 修改文件编码为GBK
  5. 记录关联(笛卡尔输出)

    1. 条件:售货机ID = boxid
  6. 字段选择

    # 字段名称 改名成 长度 精度
    1 boxid 售货机ID
    2 name 售货机名称
    3 address 售货机地址
    4 订单数量 订单号
    5 商品数量
    6 实际支付总金额 商品支付金额 15 2
    7 成本价 商品成本价 10 2
    8 销售价 商品销售价 10 2
    9 优惠金额 商品优惠金额 15 2
    10 实际支付金额 订单支付金额 15 2
  7. 排序记录

    字段名称:订单号,升序:是

  8. 去除重复记录

    字段名称:订单号,忽略大小写:N

  9. 排序记录

    字段名称:售货机ID,升序:是

  10. 分组

    分组字段:售货机ID

    # 名称 Subject 类型
    1 售货机订单数 订单号 个数
    2 售货机销售金额 订单支付金额 求和
  11. 排序记录

    字段名称:售货机销售金额,升序:否

  12. Microsoft Excel output

    1. 指定文件名
    2. 在字段栏目中获取字段

计算商品年销售金额

完整流程如下

  1. csv文件输入(订单)

    1. 找到需要导入的文件名order_details.csv
    2. 获取字段。
    3. createdtime字段的类型修改为string,并将格式清空。
    4. 修改文件编码为GBK
  2. 过滤记录

    1
    2
    3
    customerid IS NOT NULL
    AND
    status = [SUCCESS]
  3. 剪切字符串

    # 输入流字段 输出流字段 起始位置 结束位置
    1 createdtime order_date 9 10
    2 createdtime order_month 5 7
    3 createdtime order_year 0 4
  4. 字段选择

    # 字段名称 改名成 长度 精度
    1 customerid 客户ID
    2 ordernum 订单号
    3 amount 商品数量
    4 productpaytotalprice 实际支付金额
    5 productname 产品名称
    6 order_year 年份
  5. 排序记录

    字段名称:产品名称,升序:是

  6. 分组

    分组字段:产品名称、年份

    # 名称 Subject 类型
    1 售货机订单数 商品数量 个数
    2 商品销售金额 实际支付金额 求和
  7. 排序记录

    字段名称:商品销售金额,升序:否

  8. Microsoft Excel output

    1. 指定文件名
    2. 在字段栏目中获取字段

源码

Next:
期末复习-分布式操作系统