zoukankan
html css js c++ java
pandas实战------解决一道反常的pandas实现两表连接
需求背景
现在有两张表,A表结构如下
B表结构如下,区间表示产品重量在此区间的价格
要求是结合AB表,算出A表中每个产品的价格
解题思路
把AB表相连接肯定是通过相同的字段(地区代码)进行连接,但是如果只是普通的连接,已然找不到合适的区间。所以想到把运费区间多列变成多行单列,如下
然后我们在通过提取每个区间的最低值和最高值,判断重量所在的区间,最后提取出符合条件的值。
实战代码:
导入pandas并读取数据
使用stack函数将多列变成多行单列,为了保证地区代码和地区缩写这两个字段也跟着变化,我们想把它设置索引,stack后再变回来
连接两个表
判断重量是否在本区间内。提取出最小值和最大值,然后进行判断
最后只需把符合条件的筛选出来即可
查看全文
相关阅读:
前端之页面标签的图标修改
分页, 解析器, 渲染器
DRF的认证,频率,权限
视图组件,路由组件,版本控制
序列化组件
Restful规范
docker大全集
哨兵和docker容器
项目发布须知
Linux之nginx
原文地址:https://www.cnblogs.com/yangxiao-/p/14556461.html
最新文章
Effective C++ 条款27 尽量少做转型操作
序列化模块
sys模块os模块
rangdom模块与time模块
re模块与正则
python模块与包
set集合去重机制
python反射方法的应用
面向对象伪装方法
面向对象抽象类及封装
热门文章
面向对象三大特点及继承
linux中mariadb的安装
Django之用户上传文件的参数配置
django之全局默认设置查看及admin语言设置
利用正则巧妙实现字符串的定长切片
Vue之子组件
Vue之小入门
ES5与ES6的小差异
Django之时间的设置
Django之admin中管理models中的表格
Copyright © 2011-2022 走看看