python中merge函数「建议收藏」

python中merge函数「建议收藏」merge函数用来合并下面我们看看长什么样子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=True,indicator=False,valida…

大家好,又见面了,我是你们的朋友全栈君。

merge函数用来合并
下面我们看看长什么样子

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=True, indicator=False, validate=None)

left,right就是要连接的两个dataframe。
how就是连接的方法
inner:内连接,即主标签相同的就留下

>>> a=pd.DataFrame({'key':['a','b','c'],'val1':range(3)})
>>> b=pd.DataFrame({'key':['a','d','a'],'val1':range(3)})
a
  key  val1
0   a     0
1   b     1
2   c     2
 b
  key  val1
0   a     0
1   d     1
2   a     2

 pd.merge(a,b)
key  val1  val2
0   a     0     0
1   a     0     2

全连接:即把a,b集放在一起,没有的就是NaN

pd.merge(a,b,how='outer')         
  key  val1  val2
0   a     0   0.0
1   a     0   2.0
2   b     1   NaN
3   c     2   NaN            

左连接,左边取全部,右边取部分

pd.merge(a,b,how='left')
  key  val1  val2
0   a     0   0.0
1   a     0   2.0
2   b     1   NaN
3   c     2   NaN

右连接,右边取全部,左边取部分

pd.merge(a,b,how='right')
  key  val1  val2
0   a   0.0     0
1   a   0.0     2
2   d   NaN     1

left_on,和right_on主要就是键名不同的话,就指定连接的键名,我就不细说了.可以看看这个博客https://blog.csdn.net/qq_21840201/article/details/80727504

on的话就是主键:比如两个相同标签你指定一个作为主键,详细的话可以看看这个
https://blog.csdn.net/casey_cai/article/details/56834649

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

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137647.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • SVN汉化包安装方法「建议收藏」

    SVN汉化包安装方法「建议收藏」注意:下载的svn汉化包必须与svn客户端版本对应,否则安装无效     1、首先安装svn客户端,然后将svn汉化包放在svn的安装目录下。   2、安装svn汉化包之前,将svn安装目录下的languages目录下的文件全部删除。3、svn汉化包安装完成后,选择中文即可

    2022年10月22日
    0
  • pycharm 2021.5.3激活码[在线序列号][通俗易懂]

    pycharm 2021.5.3激活码[在线序列号],https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    256
  • db4o数据库文件_繁忙的Java开发人员指南db4o,使用db4o进行数据库重构

    db4o数据库文件_繁忙的Java开发人员指南db4o,使用db4o进行数据库重构存档日期:2019年5月13日|首次发布:2007年5月22日重构Java™代码比重构关系数据库要简单得多,但是幸运的是,对象数据库的情况并非如此。在《繁忙的Java开发人员db4o指南》的这一期中,TedNeward向您介绍了他最喜欢的对象数据库的另一个优点:db4o将重构简化到几乎没有用处。此内容不再被更新或维护。全文以PDF格式“按原样”提供。随着技术的飞速发展,…

    2022年7月21日
    10
  • python数组基本操作_8和数组

    python数组基本操作_8和数组Python没有数组概念,使用列表(list)来实现的,罗列几个基本操作:声明一维demo=[]动态大小数组,成员数可变demo=[3],静态大小数组,三个成员,标号从0开始demo=[“a”,“b”]数组初值二维demo=[[]*3]demo=[[“3”][“4”]]增加成员demo=[]声明动态数组demo.append(“a”)增加一个成员清空demo=[“a”,“b”]demo.clear()拷贝Python中的数组虽然是可变变

    2022年8月13日
    1
  • pycharm激活码2021年(已测有效)

    pycharm激活码2021年(已测有效),https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月14日
    51
  • java锁升级过程

    java锁升级过程java中对象锁有4种状态:(级别从低到高)1.无锁状态2.偏向锁状态3.轻量级锁状态4.重量级锁状态对象头分两部分信息,第一部分用于存储哈希码、GC分代年龄等,这部分数据被称为”MarkWord”。在32位的HotSpot虚拟机中对象未被锁定的状态下,MarkWord的32bit空间中的25bit用于存储对象哈希码,4bit用于存储对象分代年龄,2bit用于存储锁标志位,1bit固…

    2022年7月18日
    12

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号