会员
周边
众包
新闻
博问
闪存
赞助商
所有博客
当前博客
我的博客
我的园子
账号设置
简洁模式
...
退出登录
注册
登录
littemelon
博客园
首页
新随笔
联系
订阅
管理
pandas实战------解决一道反常的pandas实现两表连接
需求背景
现在有两张表,A表结构如下
B表结构如下,区间表示产品重量在此区间的价格
要求是结合AB表,算出A表中每个产品的价格
解题思路
把AB表相连接肯定是通过相同的字段(地区代码)进行连接,但是如果只是普通的连接,已然找不到合适的区间。所以想到把运费区间多列变成多行单列,如下
然后我们在通过提取每个区间的最低值和最高值,判断重量所在的区间,最后提取出符合条件的值。
实战代码:
导入pandas并读取数据
使用stack函数将多列变成多行单列,为了保证地区代码和地区缩写这两个字段也跟着变化,我们想把它设置索引,stack后再变回来
连接两个表
判断重量是否在本区间内。提取出最小值和最大值,然后进行判断
最后只需把符合条件的筛选出来即可
posted @
2021-03-26 10:01
littlemelon
阅读(
348
) 评论(
0
)
编辑
收藏
举报
刷新页面
返回顶部
公告