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 相关文章推荐
pyv8学习python和javascript变量进行交互
Dec 04 Python
python爬虫_微信公众号推送信息爬取的实例
Oct 23 Python
Python数据结构与算法之字典树实现方法示例
Dec 13 Python
python数据结构学习之实现线性表的顺序
Sep 28 Python
python使用Qt界面以及逻辑实现方法
Jul 10 Python
django 中的聚合函数,分组函数,F 查询,Q查询
Jul 25 Python
flask框架自定义过滤器示例【markdown文件读取和展示功能】
Nov 08 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
Feb 10 Python
python中使用you-get库批量在线下载bilibili视频的教程
Mar 10 Python
Keras中 ImageDataGenerator函数的参数用法
Jul 03 Python
python 如何把docker-compose.yaml导入到数据库相关条目里
Jan 15 Python
Python中文纠错的简单实现
Jul 07 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 __call()方法实现委托示例
2019/05/20 PHP
json 定义
2008/06/10 Javascript
jQuery数据缓存功能的实现思路及简单模拟
2013/05/27 Javascript
toggle一个div显示或隐藏且可扩展成自定义下拉框
2013/09/12 Javascript
Jquery EasyUI的添加,修改,删除,查询等基本操作介绍
2013/10/11 Javascript
Javascript 命名空间模式
2013/11/01 Javascript
javascript版的in_array函数(判断数组中是否存在特定值)
2014/05/09 Javascript
编写自己的jQuery提示框(Tip)插件
2015/02/05 Javascript
浅析Node.js中的内存泄漏问题
2015/06/23 Javascript
《JavaScript高级编程》学习笔记之object和array引用类型
2015/11/01 Javascript
Javascript将双字节字符转换成单字节字符并计算长度
2016/06/22 Javascript
ros::spin() 和 ros::spinOnce()函数的区别及详解
2016/10/01 Javascript
什么是JavaScript中的结果值?
2016/10/08 Javascript
AngularJS表单基本操作
2017/01/09 Javascript
带你快速理解javascript中的事件模型
2017/08/14 Javascript
JS简单实现数组去重的方法分析
2017/10/14 Javascript
JavaScript事件对象深入详解
2018/12/30 Javascript
vue实现点击隐藏与显示实例分享
2019/02/13 Javascript
node中实现删除目录的几种方法
2019/06/24 Javascript
JavaScript HTML DOM元素 节点操作汇总
2019/07/29 Javascript
JavaScript单线程和任务队列原理解析
2020/02/04 Javascript
nuxt 每个页面head标签内容设置方式
2020/11/05 Javascript
使用Python生成XML的方法实例
2017/03/21 Python
Python实现Logger打印功能的方法详解
2017/09/01 Python
python操作oracle的完整教程分享
2018/01/30 Python
儿童学习python的一些小技巧
2018/05/27 Python
PyQt5创建一个新窗口的实例
2019/06/20 Python
安装并免费使用Pycharm专业版(学生/教师)
2020/09/24 Python
英国最大的在线照明商店:Litecraft
2020/08/31 全球购物
污水厂厂长岗位职责
2014/01/04 职场文书
《他得的红圈圈最多》教学反思
2014/04/24 职场文书
领导干部民主生活会自我剖析材料范文
2014/09/20 职场文书
依法行政工作汇报材料
2014/10/28 职场文书
2014年招商引资工作总结
2014/11/22 职场文书
创业计划书之美甲店
2019/09/20 职场文书
简单实现一个手持弹幕功能+文字抖动特效
2021/03/31 HTML / CSS