Pandas 按索引合并数据集的方法


Posted in Python onNovember 15, 2018

如下所示:

import numpy as np
import pandas as pd
from pandas import Series,DataFrame

一、merge函数

left1 = DataFrame({'水果':['苹果','梨','草莓'],
     '价格':[3,4,5],
     '数量':[9,8,7]}).set_index('水果')
right1 = DataFrame({'水果':['苹果','草莓'],
     '产地':['美国','中国']})
print(left1)
print(right1)
价格 数量
水果  
苹果 3 9
梨 4 8
草莓 5 7
 产地 水果
0 美国 苹果
1 中国 草莓
print(pd.merge(left1,right1,right_on='水果',left_index=True,how='outer'))
价格 数量 产地 水果
0 3 9 美国 苹果
1 4 8 NaN 梨
1 5 7 中国 草莓

二、DataFrame的join函数

left2 = left1
right2 = right1.set_index('水果')

1.join函数默认将两个DataFrame的index进行合并

print(left2.join(right2))
价格 数量 产地
水果    
苹果 3 9 美国
梨 4 8 NaN
草莓 5 7 中国

2.若其中一个DataFrame合并的键不在索引上,可使用on参数

print(right1.join(left1,on='水果',how='outer'))
产地 水果 价格 数量
0 美国 苹果 3 9
1 中国 草莓 5 7
1 NaN 梨 4 8

3.多个DataFrame按索引合并

another = DataFrame({'水果':['苹果','香蕉','梨'],
     '品质':['AA','AAAA','A']}).set_index('水果')
print(left2.join([right2,another],how='outer'))
价格 数量 产地 品质
梨 4.0 8.0 NaN  A
苹果 3.0 9.0 美国 AA
草莓 5.0 7.0 中国 NaN
香蕉 NaN NaN NaN AAAA

以上这篇Pandas 按索引合并数据集的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
深入解析Python的Tornado框架中内置的模板引擎
Jul 11 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
Mar 29 Python
python修改list中所有元素类型的三种方法
Apr 09 Python
python绘制评估优化算法性能的测试函数
Jun 25 Python
python requests指定出口ip的例子
Jul 25 Python
Python 等分切分数据及规则命名的实例代码
Aug 16 Python
Django模板之基本的 for 循环 和 List内容的显示方式
Mar 31 Python
python中xlrd模块的使用详解
Feb 01 Python
anaconda安装pytorch1.7.1和torchvision0.8.2的方法(亲测可用)
Feb 01 Python
Django展示可视化图表的多种方式
Apr 08 Python
Python中的嵌套循环详情
Mar 23 Python
Django框架中表单的用法
Jun 10 Python
pandas 将索引值相加的方法
Nov 15 #Python
python同时遍历数组的索引和值的实例
Nov 15 #Python
python保存二维数组到txt文件中的方法
Nov 15 #Python
使用Python的toolz库开始函数式编程的方法
Nov 15 #Python
Python中is和==的区别详解
Nov 15 #Python
Python中垃圾回收和del语句详解
Nov 15 #Python
Matplotlib中文乱码的3种解决方案
Nov 15 #Python
You might like
PHP 只允许指定IP访问(允许*号通配符过滤IP)
2014/07/08 PHP
php基于base64解码图片与加密图片还原实例
2014/11/03 PHP
Symfony学习十分钟入门经典教程
2016/02/03 PHP
利用php-cli和任务计划实现订单同步功能的方法
2017/05/03 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
2020/04/02 PHP
你所要知道JS(DHTML)中的一些技巧
2007/01/09 Javascript
JQuery从头学起第二讲
2010/07/04 Javascript
javascript中length属性的探索
2011/07/31 Javascript
详解Javascript 装载和执行
2014/11/17 Javascript
javascript实现时间格式输出FormatDate函数
2015/01/13 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
简述JavaScript的正则表达式中test()方法的使用
2015/06/16 Javascript
javascript中for/in循环及使用技巧
2015/09/01 Javascript
详解用webpack2搭建angular2的项目
2017/06/22 Javascript
微信小程序 sha1 实现密码加密实例详解
2017/07/06 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
2017/08/23 Javascript
jQuery简单判断值是否存在于数组中的方法示例
2018/04/17 jQuery
JS实现监控微信小程序的原理
2018/06/15 Javascript
layer.open提交子页面的form和layedit文本编辑内容的方法
2019/09/27 Javascript
JavaScript基于面向对象实现的无缝滚动轮播示例
2020/01/17 Javascript
Js和VUE实现跑马灯效果
2020/05/25 Javascript
JS实现点击掉落特效
2021/01/29 Javascript
[52:31]VP vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python操作docx写入内容,并控制文本的字体颜色
2020/02/13 Python
解决Python paramiko 模块远程执行ssh 命令 nohup 不生效的问题
2020/07/14 Python
python UDF 实现对csv批量md5加密操作
2021/01/01 Python
电气专业推荐信范文
2013/11/18 职场文书
合作协议书
2014/04/23 职场文书
普通话演讲稿
2014/09/03 职场文书
党校学习心得体会范文
2014/09/09 职场文书
放假通知范文
2015/04/14 职场文书
党员心得体会范文2016
2016/01/23 职场文书
2017年大学生寒假社会实践活动总结
2016/04/06 职场文书
朋友圈早安励志语录!
2019/07/08 职场文书
用Python将库打包发布到pypi
2021/04/13 Python
python实现Nao机器人的单目测距
2021/09/04 Python