pandas merge left_并集和交集的区别图解

pandas merge left_并集和交集的区别图解取交集:print(pd.merge(df1,df2,on=[‘name’,’age’,’sex’]))取并集:print(pd.merge(df1,df2,on=[‘name’,’age’,’sex’],how=’outer’))

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

取交集:print(pd.merge(df1,df2,on=['name', 'age', 'sex']))
取并集:print(pd.merge(df1,df2,on=['name', 'age', 'sex'], how='outer'))
函数:
pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None,
         left_index=False, right_index=False, sort=True,
         suffixes=('_x', '_y'), copy=True, indicator=False,
         validate=None)

参数如下:

left: 拼接的左侧DataFrame对象
right: 拼接的右侧DataFrame对象
on: 要加入的列或索引级别名称。 必须在左侧和右侧DataFrame对象中找到。 如果未传递且left_index和right_index为False,则DataFrame中的列的交集将被推断为连接键。
left_on:左侧DataFrame中的列或索引级别用作键。 可以是列名,索引级名称,也可以是长度等于DataFrame长度的数组。
right_on: 左侧DataFrame中的列或索引级别用作键。 可以是列名,索引级名称,也可以是长度等于DataFrame长度的数组。
left_index: 如果为True,则使用左侧DataFrame中的索引(行标签)作为其连接键。 对于具有MultiIndex(分层)的DataFrame,级别数必须与右侧DataFrame中的连接键数相匹配。
right_index: 与left_index功能相似。
how: One of ‘left’, ‘right’, ‘outer’, ‘inner’. 默认inner。inner是取交集,outer取并集。比如left:[‘A’,‘B’,‘C’];right[’’A,‘C’,‘D’];inner取交集的话,left中出现的A会和right中出现的买一个A进行匹配拼接,如果没有是B,在right中没有匹配到,则会丢失。’outer’取并集,出现的A会进行一一匹配,没有同时出现的会将缺失的部分添加缺失值。
sort: 按字典顺序通过连接键对结果DataFrame进行排序。 默认为True,设置为False将在很多情况下显着提高性能。
suffixes: 用于重叠列的字符串后缀元组。 默认为(‘x’,’ y’)。
copy: 始终从传递的DataFrame对象复制数据(默认为True),即使不需要重建索引也是如此。
indicator:将一列添加到名为_merge的输出DataFrame,其中包含有关每行源的信息。 _merge是分类类型,并且对于其合并键仅出现在“左”DataFrame中的观察值,取得值为left_only,对于其合并键仅出现在“右”DataFrame中的观察值为right_only,并且如果在两者中都找到观察点的合并键,则为left_only。

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

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

(0)
上一篇 2026年1月22日 下午7:15
下一篇 2026年1月22日 下午7:43


相关推荐

  • L1正则化和L2正则化讲解

    L1正则化和L2正则化讲解L1 正则化和 L2 正则化讲解 在机器学习实践过程中 训练模型的时候往往会出现过拟合现象 为了减小或者避免在训练中出现过拟合现象 通常在原始的损失函数之后附加上正则项 通常使用的正则项有两种 L1 正则化和 L2 正则化 L1 正则化和 L2 正则化都可以看做是损失函数的惩罚项 所谓惩罚项是指对损失函数中的一些参数进行限制 让参数在某一范围内进行取值 L1 正则化的模型叫做 LASSO 回归 L2 正则化的模型叫做岭回归 LASSO 回归公式 min12m i 1m f x y i 2 w 1min fr

    2026年3月7日
    4
  • 常用网络通信协议结构图「建议收藏」

    常用网络通信协议结构图「建议收藏」话不多说直接上图妈妈再也不用担心我搞不清楚网络协议关系了一图降十会

    2025年12月8日
    6
  • setLayout()和GridData的设置[通俗易懂]

    setLayout()和GridData的设置[通俗易懂]总结:(1)setLayout()是设置界面布局,如界面有几行几列如jf.setLayout(newGridLayout(2,1));//容器共有2行1列。GridLayoutlayout=newGridLayout();layout.numColumns=4;//设置容器的列数layout.makeColumnsEqualWidth=false;//设…

    2022年5月10日
    38
  • 解决:pycharm运行程序时在Python console窗口中运行而不是在运行窗口中运行

    解决:pycharm运行程序时在Python console窗口中运行而不是在运行窗口中运行问题 在 pycharm 中右键点击 run 运行程序 发现没有打开 run 窗口运行 而是在 Pythonconsol 窗口中运行的 解决方法 打开菜单栏 run gt editconfigur 把下图中的复选框取消 发现这样只能解决单个文件 打开左侧的 Templates 下面的 python 再把这个复选框去掉 ok 这样就可以应用到所有的文件了 下次运

    2026年3月27日
    1
  • Apache中 RewriteRule说明

    Apache中 RewriteRule说明Apache2.0手册中文版翻译项目[本文译者:kajaa*]项目说明|项目进度|项目讨论区|Apache手册中文版//–> 

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