Pandas 合并多个Dataframe(merge,concat)的方法


Posted in Python onJune 08, 2018

在数据处理的时候,尤其在搞大数据竞赛的时候经常会遇到一个问题就是,多个表单的合并问题,比如一个表单有user_id和age这两个字段,另一个表单有user_id和sex这两个字段,要把这两个表合并成只有user_id、age、sex三个字段的表怎么办的,普通的拼接是做不到的,因为user_id每一行之间不是对应的,像拼积木似的横向拼接肯定是不行的。

pandas中有个merge函数可以做到这个实用的功能,merge这个词会点SQL语言的应该都不陌生。

下面说说merge函数怎么用:

df = pd.merge(df1, df2, how='left', on='user_id')

用法很简单,说一下后两个参数就可以了,how=""参数表示以哪个表的key为准,上面的how="left"表示以表df1为准,而key也就是on=""的参数

how="left"就是说,保留user_id字段的全部信息,不增加也不减少,但是拼接的时候只把df2表中的与df1中user_id字段交集的部分合并上就可以了,如果df2中出现了某个user_id在df1中没有出现,就抛弃掉这个样本不作处理。

如果要进行多key合并:

df = pd.merge(df1, df2, how='left', on=['user_id','sku_id'])

但是如果想仅进行简单的“拼接”而不是合并呢,要使用concat函数:

df = pd.concat( [df_user, dummies_sex, dummies_age, dummies_level], axis=1 )

这样可以保留这些表单的全部信息,参数axis=1表示列拼接,axis=0表示行拼接。

要保证背个表单的行数是相同的,并且每一行对应的key也是相同的,列拼接才变得有意义

以上这篇Pandas 合并多个Dataframe(merge,concat)的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python编写爬虫小程序
May 14 Python
python创建进程fork用法
Jun 04 Python
在windows下快速搭建web.py开发框架方法
Apr 22 Python
Python学习小技巧总结
Jun 10 Python
python Elasticsearch索引建立和数据的上传详解
Aug 04 Python
Python qrcode 生成一个二维码的实例详解
Feb 12 Python
pytorch实现从本地加载 .pth 格式模型
Feb 14 Python
基于python SMTP实现自动发送邮件教程解析
Jun 02 Python
Pycharm快捷键配置详细整理
Oct 13 Python
如何快速一次性卸载所有python包(第三方库)呢
Oct 20 Python
python requests库的使用
Jan 06 Python
教你使用TensorFlow2识别验证码
Jun 11 Python
使用pandas对两个dataframe进行join的实例
Jun 08 #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
You might like
php设计模式 Observer(观察者模式)
2011/06/26 PHP
ajax在joomla中的原生态应用代码
2012/07/19 PHP
基于PHP字符串的比较函数strcmp()与strcasecmp()的使用详解
2013/05/15 PHP
PHP设计模式之调解者模式的深入解析
2013/06/13 PHP
DOM基础及php读取xml内容操作的方法
2015/01/23 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
2020/04/04 PHP
javascript 火狐(firefox)不显示本地图片问题解决
2008/07/05 Javascript
效率高的Javscript字符串替换函数的benchmark
2008/08/02 Javascript
window.parent调用父框架时 ie跟火狐不兼容问题
2009/07/30 Javascript
Exitjs获取DataView中图片文件名
2009/11/26 Javascript
Javascript图像处理—亮度对比度应用案例
2013/01/03 Javascript
JavaScript运行时库属性一览表
2014/03/14 Javascript
node.js中的fs.close方法使用说明
2014/12/17 Javascript
编写简单的jQuery提示插件
2014/12/21 Javascript
jquery获取img的src值的简单实例
2016/05/17 Javascript
jQuery自定义数值抽奖活动代码
2016/06/11 Javascript
KnockoutJS 3.X API 第四章之表单textInput、hasFocus、checked绑定
2016/10/11 Javascript
vue实现组件之间传值功能示例
2018/07/13 Javascript
原生js实现抽奖小游戏
2019/06/27 Javascript
jQuery实现简易聊天框
2020/02/08 jQuery
js实现的订阅发布者模式简单示例
2020/03/14 Javascript
[02:42]决战东方!DOTA2亚洲邀请赛重启荣耀之争
2017/03/17 DOTA
Python使用poplib模块和smtplib模块收发电子邮件的教程
2016/07/02 Python
python单线程下实现多个socket并发过程详解
2019/07/27 Python
python实现简易淘宝购物
2019/11/22 Python
keras实现基于孪生网络的图片相似度计算方式
2020/06/11 Python
毕业生求职自荐书范文
2014/03/27 职场文书
法人代表委托书
2014/04/04 职场文书
协议书怎么写
2014/04/21 职场文书
2015年度质量工作总结报告
2015/04/27 职场文书
幼儿园教师师德承诺书
2015/04/28 职场文书
交通事故起诉书
2015/05/19 职场文书
2016新年致辞
2015/08/01 职场文书
小学生运动会广播
2015/08/19 职场文书
Python Django / Flask如何使用Elasticsearch
2022/04/19 Python
使用 Koa + TS + ESLlint 搭建node服务器的过程详解
2022/05/30 NodeJs