当前位置: 代码网 > it编程>前端脚本>Python > pandas中DataFrame的merge操作的实现

pandas中DataFrame的merge操作的实现

2024年07月26日 Python 我要评论
前言本文主要记录我在阅读《python金融大数据分析》一书时,原本对书中dataframe的merge操作有点疑惑,后来通过实验发现书上代码在现有环境下已经报错的事实。因此,进行整理记录。一、merg

前言

本文主要记录我在阅读《python金融大数据分析》一书时,原本对书中dataframe的merge操作有点疑惑,后来通过实验发现书上代码在现有环境下已经报错的事实。因此,进行整理记录。

一、merge操作是什么?

merge是对pandas的dataframe对象进行合并的操作。其具体参数如下:

pandas.merge(left, right, how='inner', on=none, left_on=none, right_on=none,
			 left_index=false, right_index=false, sort=false, suffixes=('_x', '_y'),
			 copy=none, indicator=false, validate=none)

二、代码实验

1.新建dataframe

代码如下:

import pandas as pd
df1 = pd.dataframe(['100','200','300','400'],index=['a','b','c','d'],columns=['a',])
df2 = pd.dataframe(['200','150','50'],index=['f','b','d'],columns=['b',])
c = pd.series([250,150,50],index=['b','d','c'])
df1['c'] = c
df2['c'] = c

dataframe输出如下:

在这里插入图片描述

在这里插入图片描述

2.merge操作

例1:默认情况下,以c作为合并列

pd.merge(df1,df2)

在这里插入图片描述

例2:显性设置合并列为c

pd.merge(df1,df2,on='c')

在这里插入图片描述

例3:设置外连接,可以理解为并集,默认还是以c为合并列

pd.merge(df1,df2,how='outer')

在这里插入图片描述

例4:左dataframe以a列为合并列,右dataframe以b列为合并列

pd.merge(df1,df2,left_on='a',right_on='b')

在这里插入图片描述

例5:左dataframe以a列为合并列,右dataframe以b列为合并列,并集

pd.merge(df1,df2,left_on='a',right_on='b',how='outer')

在这里插入图片描述

例6:左dataframe以索引为合并列,右dataframe以索引为合并列

pd.merge(df1,df2,left_index=true,right_index=true)

在这里插入图片描述

例7:企图以c为合并列,同时左dataframe以索引为合并列

pd.merge(df1,df2,left_index=true,on='c')

在这里插入图片描述

系统会抛出合并异常,说合并列和索引不能同时设置,mergeerror: can only pass argument “on” or “left_index” and “right_index”, not a combination of both.

总结

以上就是要记录/勘误的内容,本文仅仅简单介绍了pandas中dataframe的merge使用。书中可能还存在许许多多的错误,仍有待我们去发掘。每一次小小的发现都是大大的收获。

到此这篇关于pandas中dataframe的merge操作的实现的文章就介绍到这了,更多相关dataframe merge操作内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com