使用pandas对两个dataframe进行join的实例


Posted in Python onJune 08, 2018

需求:

两个文件,一个文件为统计报表,里面含有手机号,另一个文件为手机号段归属地,含有手机号码前七位对应的地区。需要对统计报表进行处理,将手机号所在的归属地加入到统计报表中,使用pandas提供的join功能来实现,代码如下:

#coding=utf-8
from pandas import Series,DataFrame
import pandas as pd
#reader1 = pd.read_csv('Dm_Mobile.txt',iterator=True,encoding="gb2312")
#df1 = reader1.get_chunk(10)
#reader2 = pd.read_csv('201604.csv',iterator=True,encoding="gb2312")
#df2 = reader.get_chunk(10)

#读取两个csv文件,生成dataframe
df1 = pd.read_csv('Dm_Mobile.csv',encoding="gb2312")
df2 = pd.read_csv('201604.csv',encoding="gb2312")

#截取手机号前七位,作为新列添加到dataframe
df2['p7s'] = Series([str(x)[:7] for x in Series(df2[u'手机号'])])
df2['p7i'] = df2['p7s'].astype("int64")

#在两个dataframe的手机前七位列上创建索引
index_df1 = df1.set_index('MobileNumber')
index_df2 = df2.set_index(['p7i'])

#以手机号前七位列为join列,对两个dataframe进行join
result = pd.concat([index_df1, index_df2], axis=1, join='inner')

#选取需要显示的列,重新生成result
result = result.reindex(columns=[u'积分商城订单号', u'手机号',u'产品编码',u'商品名称',u'商品价格',u'数量',u'虚拟码',u'消费时间',u'时间',u'兑换渠道商',u'MobileArea'])

#写入到excel文件中
writer = pd.ExcelWriter('pandas_simple.xlsx')
result.to_excel(writer, sheet_name=u'设计院',index=False)
writer.save()

以上这篇使用pandas对两个dataframe进行join的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python中的线程进行网络编程的入门教程
Apr 15 Python
一些Python中的二维数组的操作方法
May 02 Python
分分钟入门python语言
Mar 20 Python
对python使用telnet实现弱密码登录的方法详解
Jan 26 Python
Python中的pathlib.Path为什么不继承str详解
Jun 23 Python
python点击鼠标获取坐标(Graphics)
Aug 10 Python
Python实现病毒仿真器的方法示例(附demo)
Feb 19 Python
python GUI库图形界面开发之PyQt5信号与槽的高级使用技巧装饰器信号与槽详细使用方法与实例
Mar 06 Python
Python使用monkey.patch_all()解决协程阻塞问题
Apr 15 Python
浅析Python 字符编码与文件处理
Sep 24 Python
python 利用PyAutoGUI快速构建自动化操作脚本
May 31 Python
Python实现打乒乓小游戏
Sep 25 Python
pandas带有重复索引操作方法
Jun 08 #Python
使用python爬取B站千万级数据
Jun 08 #Python
pandas表连接 索引上的合并方法
Jun 08 #Python
详谈Pandas中iloc和loc以及ix的区别
Jun 08 #Python
python实现人人自动回复、抢沙发功能
Jun 08 #Python
利用Python写一个爬妹子的爬虫
Jun 08 #Python
python os用法总结
Jun 08 #Python
You might like
Laravel 5框架学习之向视图传送数据
2015/04/08 PHP
Hutia 的 JS 代码集
2006/10/24 Javascript
网页自动跳转代码收集
2009/09/27 Javascript
JQuery扩展插件Validate 1 基本使用方法并打包下载
2011/09/05 Javascript
javascript full screen 全屏显示页面元素的方法
2013/09/27 Javascript
Jquery树插件zTree用法入门教程
2015/02/17 Javascript
JavaScript实现动态删除列表框值的方法
2015/08/12 Javascript
利用HTML5的画布Canvas实现刮刮卡效果
2015/09/06 Javascript
jQuery实现下拉框多选 jquery-multiselect 的实例代码
2016/07/14 Javascript
详解js中的apply与call的用法
2016/07/30 Javascript
浅谈vue-router2路由参数注意的问题
2017/11/08 Javascript
让bootstrap的carousel支持滑动滚屏的实现代码
2017/11/27 Javascript
AngularJS自定义表单验证功能实例详解
2018/08/24 Javascript
vue中过滤器filter的讲解
2019/01/21 Javascript
[13:21]DOTA2国际邀请赛采访专栏:RSnake战队国士无双,Fnatic.Fly
2013/08/06 DOTA
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
python基于urllib实现按照百度音乐分类下载mp3的方法
2015/05/25 Python
Python中pygame安装方法图文详解
2015/11/11 Python
OpenCV-Python实现轮廓检测实例分析
2018/01/05 Python
在python下使用tensorflow判断是否存在文件夹的实例
2019/06/10 Python
在pytorch中查看可训练参数的例子
2019/08/18 Python
python实现输入任意一个大写字母生成金字塔的示例
2019/10/27 Python
Python urlopen()和urlretrieve()用法解析
2020/01/07 Python
Python内存泄漏和内存溢出的解决方案
2020/09/26 Python
解决python3.6用cx_Oracle库连接Oracle的问题
2020/12/07 Python
美国知名玩具品牌:Melissa & Doug
2016/08/16 全球购物
Juicy Couture Beauty官方网站:香水和化妆品
2019/03/12 全球购物
Timberland俄罗斯官方网上商店:全球领先的户外品牌
2020/03/15 全球购物
Kipling澳洲官网:购买凯浦林包包
2020/12/17 全球购物
科级干部考察材料
2014/02/15 职场文书
计算机科学与技术专业求职信
2014/09/03 职场文书
机动车登记业务委托书
2014/10/08 职场文书
小学生心理健康活动总结
2015/05/08 职场文书
大学毕业谢师宴致辞
2015/07/27 职场文书
公文写作:新员工转正申请书范本3篇!
2019/08/07 职场文书
完美解决golang go get私有仓库的问题
2021/05/05 Golang