pandas表连接 索引上的合并方法

yipeiwu_com6年前Python基础

如下所示:

left1 = pd.DataFrame({‘key':[‘a','b','a','a','b','c'],'value':range(6)}) 
right1 = pd.DataFrame({‘group_val':[3.5,7]},index = [‘a','b']) 
print(left1) 
print(right1) 
result = pd.merge(left1,right1,left_on='key',right_index=True) 
print(result)

层次化数据的索引

lefth = pd.DataFrame({‘key1':[‘Ohio','Ohio','Ohio','Nevada','Nevada'], 
‘key2':[2000,2001,2002,2001,2002], 
‘data':np.arange(5)}) 
print(lefth) 
righth = pd.DataFrame(np.arange(12).reshape(6,2),index = [[‘Nevada','Nevada','Ohio','Ohio','Ohio','Ohio'], 
[2001,2000,2000,200,2001,2002]]) 
print(righth) 
result = pd.merge(lefth,righth,left_on=[‘key1','key2'],right_index=True) 
print(result)

以上代码如果想改为外部连接 how = ‘outer' 就可以了

同时合并双方索引

left2 = pd.DataFrame([[1,2],[3,4],[5,6]],index=[‘a','c','e'],columns=[‘Ohio','Neveda']) 
right2 = pd.DataFrame([[7,8],[9,10],[11,12],[13,14]],index=[‘b','c','d','e'],columns=[‘Missouri','Alabma']) 
print(left2) 
print(right2) 
result = pd.merge(left2,right2,how='outer',left_index=True,right_index=True) 
print(result)

以上这篇pandas表连接 索引上的合并方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

10种检测Python程序运行时间、CPU和内存占用的方法

10种检测Python程序运行时间、CPU和内存占用的方法

在运行复杂的Python程序时,执行时间会很长,这时也许想提高程序的执行效率。但该怎么做呢? 首先,要有个工具能够检测代码中的瓶颈,例如,找到哪一部分执行时间比较长。接着,就针对这一部分...

Python3.x和Python2.x的区别介绍

1.性能Py3.0运行 pystone benchmark的速度比Py2.5慢30%。Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可以取得很好的优化结果。Py3.1性能...

在Python的Flask框架中实现单元测试的教程

 概要 在前面的章节里我们专注于在我们的小应用程序上一步步的添加功能上。到现在为止我们有了一个带有数据库的应用程序,可以注册用户,记录用户登陆退出日志以及查看修改配置文件。 在...

Python中str.format()详解

1. str.format 的引入 在 Python 中,我们可以使用 + 来连接字符串,在简单情况下这种方式能够很好的工作。但是当我们需要进行复杂的字符串连接时,如果依然使用 + 来...

为什么str(float)在Python 3中比Python 2返回更多的数字

在Python 2.7中,一个float的repr返回最接近十七位数的十进制数;这足以精确地识别每个可能的IEEE浮点值.浮点数的str类似地工作,除了它将结果限制为12位数;对于大多数...