Python实战案例数据合并订单表和商品价格表数据

有如下数据,订单表和商品价格表,进行数据合并,输出客户需要的效果。

数据样例:👇
订单表:
在这里插入图片描述
商品价格表:在这里插入图片描述
最终效果:
在这里插入图片描述

01实现思路

目的是将订单数据和商品价格数据按照商品id和时间进行匹配,以确保每个订单都能找到正确的商品价格,最后输出每个订单的商品id和对应的单价。

02实现过程

  1. 导入pandas库:首先,代码通过import pandas as pd导入了pandas库,这是进行数据处理的常用库。

  2. 读取订单数据:使用pd.read_excel函数读取名为’20240902数据合并.xlsx’的Excel文件中名为’订单表’的工作表。这个函数将Excel表格加载到pandas的DataFrame对象中,方便后续处理。

  3. 排序订单数据:对读取的订单数据按照’订单时间’列进行排序,确保数据按照时间顺序排列。

  4. 读取商品价格数据:同样使用pd.read_excel函数读取同一个Excel文件中名为’商品价格表’的工作表。

  5. 排序商品价格数据:对商品价格数据按照’价格生效开始时间’列进行排序,这样每个商品的价格都是按照生效时间顺序排列的。

  6. 合并数据:使用pd.merge_asof函数将排序后的订单表和商品价格表按照’商品id’进行合并。这里的合并是基于时间的,即对于每个订单,它会找到商品价格表中价格生效开始时间最接近但不超过订单时间的价格记录。direction='backward'参数指定了合并时查找价格记录的方向,即从当前记录向前查找最接近的记录。

  7. 删除不需要的列:合并后的数据中包含了一些不需要的列,如’价格生效结束时间’和’价格生效开始时间’,使用drop方法将这些列从DataFrame中删除。

  8. 按商品id排序:为了使最终的数据更加有序,代码再次对合并后的数据按照’商品id’进行排序。

  9. 打印结果:最后,代码使用print函数打印出合并后的数据中’订单时间’、'商品id’和’单价’这三列,以便查看合并后的结果。

03详细代码和注释

Python实战案例数据合并订单表和商品价格表数据

今天的分享就到这里了。有收获的小伙伴,记得点赞、收藏、分享哦!

如果您对本次分享的内容感兴趣的话,记得关注关注哦!不然下次找不到喽!
关注不迷路哦!

“好记性不如烂笔头”,IT小本本 —— 记录IT知识,分享打工人真实的日常操作笔记!!!
😝有需要的小伙伴,可以V扫描下方二维码免费关注哦!

在这里插入图片描述

  • 11
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值