pd.merge() 和 dataframe.merge() 之间的区别

2024-02-18

我想知道当你合并时有什么区别pd.merge versus dataframe.merge(),示例如下:

pd.merge(dataframe1, dataframe2)

and

dataframe1.merge(dataframe2)

我们有两个函数可以用来完成几乎相同的任务:pandas.merge() 和 DataFrame.merge()。

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

DataFrame.merge(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)

两者看起来很相似,使用其中一种比另一种有什么优势?

pd.merge() 调用 df.merge,因此 df1.merge(df2) 将给出与 pd.merge(df1, df2) 几乎相同的结果。

然而,pd.merge() 是包裹风格函数和 df1.merge() 是链接风格,这使得后者更容易从左到右链接

E.g.,

 df1.merge(df2).merge(df3) 
 #looks better and readable [analogus to %>% pipeline operator in R] than 
 pd.merge(pd.merge(df1, df2), df3).

让我们看一个可重现的例子

d1 = pd.read_html('https://worldpopulationreview.com/countries')
pop = d1[0]
print(pop.info(), '\n') #Data for 232 countries for 7 columns

pop.head(3)

d2 = pd.read_html('https://worldpopulationreview.com/country-rankings/median-age')
age = d2[0]
print(age.info(), '\n') #Data for 221 countries for 5 columns

age.head(3)

display('pd.merge(): ', pd.merge(pop, age), 'df.merge(): ', pop.merge(age))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pd.merge() 和 dataframe.merge() 之间的区别 的相关文章

  • boto3 资源(例如 DynamoDB.Table)的类型注释

    The boto3库提供了几种返回资源的工厂方法 例如 dynamo boto3 resource dynamodb Table os environ DYNAMODB TABLE 我想注释这些资源 以便我可以获得更好的类型检查和完成 但我
  • Tweepy StreamListener 到 CSV

    我是 python 新手 我正在尝试开发一个应用程序 使用 Tweepy 和 Streaming API 从 Twitter 检索数据并将数据转换为 CSV 文件 问题是此代码不会创建输出 CSV 文件 也许是因为我应该将代码设置为在实现例
  • 如何在 PyCharm 4.5.2 中使用 PyPy 作为标准/默认解释器?

    如何在 PyCharm 4 5 2 中使用 PyPy 作为标准 默认解释器 一切都在 Ubunutu 14 10 下运行 并且 pypy 已经安装 您可以在项目的设置下进行配置 这个官方文档直接涵盖了 https www jetbrains
  • 更新 Sqlalchemy 中的多个列

    我有一个在 Flask 上运行的应用程序 并使用 sqlalchemy 与数据库交互 我想用用户指定的值更新表的列 我正在使用的查询是 def update table value1 value2 value3 query update T
  • 在 macOS 中通过 Python 访问进程的压缩 RAM(顶部的 CMPRS)的方法?

    我试图弄清楚如何从 Python 访问任何给定进程占用的实际 RAM 量 我发现 psutil Process PID memory info rss 工作得很好 直到操作系统决定开始压缩某些进程的 RAM 然后 所有的 memory in
  • numpy 使用 datetime64 进行数字化

    我似乎无法让 numpy digitize 与 datetime64 一起使用 date bins np array np datetime64 datetime datetime 2014 n 1 s for n in range 1 1
  • 可以用 Django 制作移动应用程序吗?

    我想知道我是否可以在我的网站上使用 Django 代码 并以某种方式在移动应用程序 Flutter 等框架中使用它 那么是否可以使用我现在拥有的 Django 后端并在移动应用程序中使用它 所以就像models views etc 是的 有
  • python 中的 Johansen 协整检验

    我找不到任何有关在处理统计和时间序列分析 pandas 和 statsmodel 的 Python 模块中执行 Johansen 协整检验的功能的参考 有谁知道是否有一些代码可以执行时间序列之间的协整测试 现在 这已在 Python 的 s
  • 如何根据查找表匹配多列

    我有以下两个数据框 lookup lt data frame id c A B C price c 1 2 3 results lt data frame price 1 c 2 2 1 price 2 c 3 1 1 我现在想要浏览所有列
  • 如何使用 Django 项目设置 SQLite?

    我已阅读 Django 文档 仅供参考 https docs djangoproject com en 1 3 intro tutorial01 https docs djangoproject com en 1 3 intro tutor
  • 在Python中计算内存碎片

    我有一个长时间运行的进程 不断分配和释放对象 尽管正在释放对象 但 RSS 内存使用量会随着时间的推移而增加 如何计算发生了多少碎片 一种可能性是计算 RSS sum of allocations 并将其作为指标 即便如此 我该如何计算分母
  • distutils.errors.DistutilsPlatformError:需要 Microsoft Visual C++ 14.0

    我想安装Pandas在我的机器上 但出现以下消息 错误 distutils errors DistutilsPlatformError 需要 Microsoft Visual C 14 0 获取它与 Microsoft Visual C 构
  • django-admin.py makemessages 不起作用

    我正在尝试翻译一个字符串 load i18n trans Well Hello there how are you to Hola amigo que tal 我的 settings py 文件有这样的内容 LOCALE PATHS os
  • 乘以行并按单元格值附加到数据框

    考虑以下数据框 df pd DataFrame X a b c d Y a b d e Z a b c d 1 2 1 3 df 我想在 列中附加数字大于 1 的行 并在该行中的数字减 1 df 最好应该 然后看起来像这样 或者它可能看起来
  • Pandas style.bar 颜色基于条件?

    如何渲染其中一列的 Pandas dfstyle bar color属性是根据某些条件计算的 Example df style bar subset before after color ff781c vmin 0 0 vmax 1 0 而
  • 由于 json 字符串化 dict 键导致数据丢失

    考虑下面的例子 gt gt gt import json gt gt gt d 0 potato 0 spud gt gt gt json dumps d 0 potato 0 spud gt gt gt json loads json d
  • 如何在 robobrowser-python 中发出 POST 请求

    http robobrowser readthedocs org en latest api html http robobrowser readthedocs org en latest api html 我正在尝试使用 APIbrows
  • 如何在单元测试中使用 JSON 发送请求

    我的 Flask 应用程序中有在请求中使用 JSON 的代码 我可以像这样获取 JSON 对象 Request request get json 这一直工作得很好 但是我正在尝试使用 Python 的 unittest 模块创建单元测试 但
  • 在 Django shell 会话期间获取 SQL 查询计数

    有没有办法打印 Django ORM 在 Django shell 会话期间执行的原始 SQL 查询的数量 Django 调试工具栏已经提供了此类信息 例如 5 QUERIES in 5 83MS但如何从 shell 中获取它并不明显 您可
  • 长/宽数据到宽/长

    我有一个数据框 如下所示 import pandas as pd d decil 1 decil 1 decil 2 decil 2 decil 3 decil 3 decil kommune AA BB AA BB AA BB 2010

随机推荐

  • php fputcsv 在 CSV 中使用分号分隔符

    我编写了一段代码 从数据库检索数据并使用函数 fputcsv 将它们填充到 CSV 中 我把以下内容放在上面 file fopen internal customer info csv w 然后我检索数据并将它们放入变量中 运行该函数 cu
  • 意外的 NSAutoresizingMaskLayoutConstraint 将 UIView 从笔尖添加到自动布局故事板场景

    我在 IB 中有以下内容 并且两个视图都打开了 使用自动布局 并关闭了 调整子视图大小 我只是尝试将自动布局视图的实例添加到容器视图中 以便其边缘与其容器视图的边缘相交 容器视图启用了 使用自动布局 并且高度相同 但宽度是其两倍 这是代码
  • Flutter - 在 CustomPainter 上获取触摸输入

    我有一个简单的 CustomPaint CustomPainter 来绘制一段圆 代码如下 我读到我无法使用 GestureDetector 因为它不是一个合适的小部件 那么获取输入的最佳方式是什么 我将把一堆片段放在一起 所以我需要像素精
  • 页面上的 WPF KeyDown 事件

    我有一个NavigationWindow with Page 页面 XAML
  • 如何制作符号表

    我们的任务是制作一个编译器 我们已经进行了词法和语法分析 但我们仍停留在中间代码的生成上 我们意识到我们必须实现一个符号表才能进行中间代码生成 但我们不知道如何做到这一点以及它包含什么 给出下面的代码 符号表应该包含什么 该代码是用教育语言
  • 选择器 - 在 jQuery 中选择页面上的所有表格

    假设我在嵌入式 div 的各个级别的页面上有多个表 没有 ID 或名称 我的选择器会是什么 如果可能的话 来选择所有表 无论它位于页面上的哪个位置 并根据第一行中第一个单元格的内容迭代或过滤表 你可以简单地使用 table 作为你的选择器
  • SQL Server:Oracle 中的 RowVersion 等效项

    Oracle 有类似的数据类型吗SQL服务器RowVersion http technet microsoft com en us library ms182776 aspx 当您插入或更新一行时 相应的版本列 其类型为RowVersion
  • int gl_VertexID 导致 Three.js 出错

    我一直在使用内置顶点索引的 gl VertexID 时遇到问题 通过使用in 与 Three js 一起使用 我不知道为什么 因为文档说它适用于所有版本的 OpenGL http www opengl org sdk docs mangls
  • Python - csr_matrix 的数据结构

    我正在研究TFIDF 我用过tfidf vectorizer fit transform 它返回一个 csr matrix 但我无法理解结果的结构 数据输入 文件 天空是蓝色的 太阳是明亮的 太阳在 天空很亮 我们可以看到灿烂的太阳 明亮的
  • 无法读取快速路由器中未定义的“get”属性

    我的代码如下所示 app js const app express const itemsRouter require routes items js app use bodyParser urlencoded extended true
  • JPA 1.0 错误:名称不是可识别的实体或标识符。已知实体名称:[]

    当我尝试执行简单的 JPA 1 0 代码时 出现以下异常 可能是什么原因 5453 DevPQRWDPBSSPersist WARN P 351601 O 0 CT openjpa Enhance This configuration di
  • 在 JavaScript 中将 Unix 时间戳转换为时间

    我将时间作为 Unix 时间戳存储在 MySQL 数据库中 并将其发送到一些 JavaScript 代码 我怎样才能从中抽出时间呢 例如 在HH MM SS format let unix timestamp 1549312452 Crea
  • 如何使用快捷方式在Android Studio中自动导入必要的类?

    我刚刚切换到 Android Studio 0 5 1 这里的事情进展得很慢 因为没有任何东西可以正常工作 如何使用快捷方式导入必要的类 我的意思是像这样的 import android os Bundle import android s
  • 有没有办法从 EF 中的字符串值数组动态生成多个点赞?

    我设置了一个搜索文本框 其中搜索将单独抓取每个单词并使用 包含 搜索字段 有没有办法通过 Contains 搜索字符串数组 Keep in mind that the array would be generated dynamically
  • 是否可以在 Travis 中启动 Selenium 服务器?

    我想在 Travis 中运行完整的 Selenium 测试 但我似乎无法启动服务器 我的 Travis YAML 文件 language node js node js 6 2 before script npm install selen
  • 改进 Scala 的 JVM [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何阻止netty在服务器套接字上监听和接受

    有没有办法告诉 netty 停止侦听和接受套接字上的新连接 但完成当前连接上任何正在进行的工作 你可以直接关闭ServerSocketChannel由创建的ChannelFactory 通常 ServerSocketChannel由返回Se
  • 自动填充到最后一个相邻单元格的宏

    我正在尝试使用 Excel 中的宏记录器来记录宏来填充一列单元格 但是因为每次填充的单元格数量不同 所以它要么填充得太短 要么填充得太长 这似乎是因为宏标识单元格范围及其固定 无论如何 我可以让它填充到最后一个填充的相邻单元格吗 例如 自动
  • 如何将安装(框架+应用程序)打包到一个可执行文件中?

    我想创建一个文件 setup exe 其中包含我用 C 开发的一个应用程序以及 Net Framework 4 0 的安装程序 这个想法是 当我执行 setup exe 时 它会检查计算机上是否安装了 net Framework 4 0 如
  • pd.merge() 和 dataframe.merge() 之间的区别

    我想知道当你合并时有什么区别pd merge versus dataframe merge 示例如下 pd merge dataframe1 dataframe2 and dataframe1 merge dataframe2 我们有两个函