pandas - 合并两个数据框覆盖并指定要保留哪些列

2024-02-04

我试图合并两个熊猫数据框,尽管我想要的实际上可能不是合并。

我在两个匹配的框架中有两列,一列共享可用于连接的唯一值。另一列有一个空字段和一个填充字段。

我想在匹配唯一字段时覆盖空字段,但只保留被覆盖的列,我不想要第二个 DataFrame 中的其余列。

希望下面能进一步解释一下

>>> animals = [{"animal" : "dog", "name" : "freddy", "food" : ""},{"animal" : "cat", "name" : "dexter", "food" : ""},{"animal" : "dog", "name" : "lou lou", "food" : ""}]
>>> foods = [{"name" : "freddy", "food" : "dog mix", "brand" : "doggys dog"},{"name" : "dexter", "food" : "fussy cat mix", "brand" : "fish fishy"},{"name" : "lou lou", "food" : "bones", "brand" : "i was a cow"}]
>>> a_pd = pd.DataFrame(animals)
>>> a_pd
  animal food     name
0    dog        freddy
1    cat        dexter
2    dog       lou lou
>>> f_pd = pd.DataFrame(foods)
>>> f_pd
         brand           food     name
0   doggys dog        dog mix   freddy
1   fish fishy  fussy cat mix   dexter
2  i was a cow          bones  lou lou
>>>
>>>
>>> animal_data = a_pd.merge(f_pd, on='name', how='left')
>>> animal_data
  animal food_x     name        brand         food_y
0    dog          freddy   doggys dog        dog mix
1    cat          dexter   fish fishy  fussy cat mix
2    dog         lou lou  i was a cow          bones
>>>

我应该只吃食物,我不想要品牌(还要注意,这是示例数据,实时数据有更多列

期望的结果

>>> animal_data
  animal        name            food
0    dog      freddy         dog mix
1    cat      dexter   fussy cat mix
2    dog     lou lou           bones

Use:

animal_data = a_pd.merge(f_pd, on='name', how='left', suffixes=('_x','')).drop('food_x', axis=1)

Output:

  animal     name        brand           food
0    dog   freddy   doggys dog        dog mix
1    cat   dexter   fish fishy  fussy cat mix
2    dog  lou lou  i was a cow          bones

Or

a_pd[['animal','name']].merge(f_pd, how='left')

Output:

  animal     name        brand           food
0    dog   freddy   doggys dog        dog mix
1    cat   dexter   fish fishy  fussy cat mix
2    dog  lou lou  i was a cow          bones
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

pandas - 合并两个数据框覆盖并指定要保留哪些列 的相关文章

  • 在Langchain中,为什么ConversationalRetrievalChain不记住聊天记录并为每个聊天输入新的ConversationalRetrievalChain链?

    我正在尝试使用 langchain 创建一个客户支持系统 我通过 TextLoader 使用文本文档作为外部知识提供者 为了记住聊天 我使用 ConversationalRetrievalChain 和聊天列表 我的问题是 每次执行时con
  • PyTorch 如何计算二阶雅可比行列式?

    我有一个正在计算向量的神经网络u 我想计算关于输入的一阶和二阶雅可比矩阵x 单个元素 有人知道如何在 PyTorch 中做到这一点吗 下面是我项目中的代码片段 import torch import torch nn as nn class
  • 如何使用Python从pdf文件中删除页面?

    我有一些超过 500 页的 pdf 文件 但每个文件中只需要几页 有必要保留文档的标题页 我确切地知道程序应该删除的页数 如何使用安装在 MS Visual Studio 上的 Python 2 7 环境来完成此操作 尝试使用PyPDF2
  • 意外的缩进错误,但缩进看起来正确

    我一直在尝试运行此代码 但它引发了缩进错误 无论我尝试什么 结果都是一样的 如果我删除之前的缩进def str self 和代码的其余部分 它工作正常 但在输出时 它不显示问题 而是显示 问题对象 def str self Indentat
  • IP保持不变

    我正在尝试通过代码连接到 Tor 并更改我的身份 到目前为止我得到的结果是我连接成功但无法更改我的身份 这是我的代码 import socket import socks import httplib def connectTor sock
  • 使用 lxml 和 xpath 解析 xml 文件时如何保留 &

    我试图从输入 xml 文件中提取一些信息 并使用 lxml 和 xpath 指令将其打印到输出文件中 我在读取如下所示的 xml 标签时遇到问题
  • pythonic方式来反转一个字典,其中值是列表?

    我有一本看起来像这样的字典 letters by number 1 a b c d 2 b d 3 a c 4 a d 5 b c 我想将其反转为如下所示 numbers by letter a 1 3 4 b 1 2 5 c 1 3 5
  • Panda如何将行分组到不同的时间桶中?

    我有一个带有名为时间戳的日期时间类型列的数据帧 我想根据时间部分的时间戳将数据帧拆分为多个数据帧 每个数据帧包含按其值模 x 分钟进行值的行 其中 x 是变量 请注意e and f不按原来的顺序 以 10 分钟为模 我希望所有时间都以3在一
  • 如何缩放图像的一部分并插入到 matplotlib 中的同一图中

    我想缩放数据 图像的一部分并将其绘制在同一个图中 看起来有点像这个图 是否可以在同一图中插入缩放图像的一部分 我认为可以用子图绘制另一个图形 但它绘制了两个不同的图形 我还阅读了添加补丁以插入矩形 圆形 但不确定将图像的一部分插入到图中是否
  • Django:在管理界面中显示多对多项目的列表

    这可能是一个简单的问题 但我似乎无法理解 我在 models py 中有两个简单的模型 Service 和 Host Host services 与 Service 具有 m2m 关系 换句话说 一台主机有多个服务 一个服务可以驻留在多个主
  • 使用 Python 访问 MP3 音乐数据

    我正在尝试编写一个 Python 脚本 用于使用歌曲的数据作为比较的基础来搜索重复的 mp3 4 文件 我的情况涉及许多文件名相似但 ID3 标签不同的 mp3 4 文件 起初 我尝试循环并使用 md5 来查找重复文件 忽略文件名 当然 当
  • 有一些 numpy.map 吗?

    我可能在这里遗漏了一些明显的东西 但我遗漏了一个功能numpy map 这与 Python 的相同map函数 但将输出收集在numpy大批 例如 我可以有一个图像生成器genImage i 生成 2D 图像 大小 m n 基于单个输入 我想
  • 如何将字符串转换为二进制?

    我需要一种方法来获取 python 中字符串的二进制表示形式 例如 st hello world toBinary st 是否有一个模块可以以某种巧妙的方式执行此操作 像这样的东西吗 gt gt gt st hello world gt g
  • 如何使绘图的 xtick 标签成为简单的绘图?

    我不想用单词或数字作为 x 轴的刻度标签 而是想绘制一个简单的绘图 由直线和圆圈组成 作为每个 x 刻度的标签 这可能吗 如果是这样 在 matplotlib 中处理它的最佳方法是什么 我会删除刻度标签并将文本替换为patches http
  • PyCrypto:生成受 DES3 密码保护的 RSA 密钥

    我已经能够使用 DES3 创建受密码保护的 RSA 密钥 嗯 I think因为我对这个加密世界非常陌生 使用以下命令 openssl genrsa out tmp myKey pem passout pass f00bar des3 20
  • 包含文件中的块未被扩展模板填充

    我有一个如下所示的模板 include base top html with context include base nav html with context div Stuff block content endblock div i
  • 从 Keras 检查点加载

    我正在 Keras 中训练一个模型 我使用以下代码保存了所有内容 filepath project model hdh5 checkpoint ModelCheckpoint project model hdf5 monitor loss
  • python - 从完整地址获取邮政编码

    我有一个数据框 其中一列中有完整地址 我需要创建一个仅包含邮政编码的单独列 有些地址只有五位数字的邮政编码 而其他地址则有额外的四位数字 如何拆分列以获取邮政编码 示例数据 d name bob john address 123 6th S
  • dump() 缺少 1 个必需的位置参数:python json 中的“fp”

    我正在尝试美化 json 格式 但收到此错误 import requests as tt from bs4 import BeautifulSoup import json get url tt get https in pinterest
  • AttributeError:“列表”对象没有属性“文本”,在 DOM 中查找元素时出错

    我尝试在树 DOM 中查找元素 但遇到问题 我写 age browser find elements by xpath div id ads ul li 6 span 2 text 但它一直显示我的错误 属性错误 列表 对象没有属性 文本

随机推荐

  • 制作 VB-dll 并将其加载到 C++ 应用程序中

    我有一个问题已经困扰了整整一周 但我自己无法解决 我一直在谷歌搜索 并在各种论坛中搜索 我发现了很多 这可能有用 尝试过 但没有 没有成功 如果有人有任何线索 请帮助我 我从外部源获得了许多用 VB 编写的类和函数 我需要能够在 C 应用程
  • 从文件中读取特殊字符 - Java

    我正在从具有以下属性的文本文件中读取数据 编码 ANSI文件类型 电脑 现在 该文件包含许多特殊字符 例如度数符号 等 我正在使用以下代码读取该文件 File file new File C X Y SpecialCharacter txt
  • OpenCV VideoCapture 从视频中删除 Alpha 通道

    我有带有 Alpha 通道的视频 我尝试将其放置在另一个视频上 如下所示 public static void overlayImage Mat background Mat foreground Mat output Point loca
  • Javascript Date 对象返回 1969 年 12 月 31 日

    If you are using a date in the form of milliseconds does it need to be converted to a string in order for the Date objec
  • Python 多处理进程无声地崩溃

    我正在使用Python 2 7 3 我使用子类化了一些代码multiprocessing Process对象 如果我的子类 Process 对象中的代码没有错误 则一切运行正常 但是 如果我的子类 Process 对象中的代码存在错误 它们
  • 美化 NSArray 和 NSDictionary 的 NSLog

    我正在处理深度嵌套的 NSArray 和 NSDictionary 至少可以说这是非常耗时的 data objectatindex 0 valueForKey blah 等等 有谁知道一个很好的 iOS 类别来递归记录结构 突出显示类型并显
  • 我可以直接使用 CLion 调试库 (DLL) 吗?

    我正在使用 CLion IDE 处理多个 CMake 项目 这些项目以库作为输出目标 在我的特殊情况下是 DLL 因为我在 Windows 上 现在 直接调试 运行某些方法将非常方便 例如使用使用 CLion 的配置 这可能吗 如果没有 调
  • Android 11 - ROOT:挂载 /system 失败,在 /proc/system 中找不到

    我的操作系统是 PixysOS Android 11 当我做 mount o rw remount system 它失败了 mount system not in proc mounts 但通常它是有效的 我也在android 9中测试过
  • Gson Java 保留关键字

    我有一些 JSON 我正在使用 Gson 反序列化 resp posts public true 我的问题是public是一个Java关键字 那么我如何在我的类中创建一个与publicJSON 中的字段 您可以使用 gson 为您的字段使用
  • 如何在 docker-compose 中运行多个 JVM 参数?

    我从以下答案中得到了 JVM 参数列表https stackoverflow com a 35108974 7809534 https stackoverflow com a 35108974 7809534 Dcom sun manage
  • android NDK 可能实现最快的 2D 帧速率,我的尝试包括在内,有更好的选择吗?

    android NDK 可能实现最快的 2D 帧速率 我的尝试包括在内 有更好的选择吗 我使用 NDK 和 OpenGL ES 2 0 将帧显示为 GL TRIANGLE STRIP 上的纹理 这是在 HTC Desire 上完成的 其硬件
  • 如何检测Android平板电脑中充当USB Host的USB设备?

    我尝试在代码的帮助下开发一个示例应用程序开发者 android com http developer android com guide topics connectivity usb host html 我的代码看起来像这样 public
  • Android - 运行 jarSigner 后是否需要运行 zipAlign?

    我刚刚成功签署了一个 Android 应用程序 我正在尝试重新发布到商店 我不记得是否必须在 jarSigner 之后运行 zipAlign 或者运行 jarSigner 后我一切都好 我正在看这里 http developer andro
  • 当用户“滑出”viewpager 片段时运行代码?

    我需要检测用户何时从我的片段之一滑入和滑出 我尝试了 onPause 但似乎应用程序在滑到相邻屏幕时没有暂停 当将两个屏幕移开时它会被破坏 如果可能的话 我想从片段本身执行此操作 因为我正在动态更改片段 并且某些代码仅在存在某个片段时才有用
  • 用于登录表单的 Ruby RestClient.post

    我正在尝试使用以下代码登录网站 require rubygems require nokogiri require open uri require csv require restclient HEADERS HASH User Agen
  • 使用 ViewPager 的 RecyclerView 的 CoordinatorLayout

    我正在使用视图CoordinatorLayout from android support design 我想附上app layout behavior到片段的RecyclerView 在 Google 给出的示例中 他们仅将其附加在Rec
  • React 创建一个水平分隔线,其间有文本

    我需要创建一个 React 组件 它是一个水平分隔符 其间有类似文本的内容 我在网上拥有的所有资源都无法帮助我完成这项工作 我通过创建一个 Divider 组件并将文本放置在中间来尝试使用 Material ui 分隔线 如下例所示
  • 从 PHP 字符串中删除前 3 个字符和后 3 个字符

    我需要删除字符串的前 3 个字母和后 3 个字母 我知道我可以使用 substr 从某个字符开始 但如果我需要删除第一个和最后一个字符 我不确定是否真的可以使用它 有什么建议么 传递一个负值作为length参数 第三个参数 substr h
  • 如何使用 JavaScript(无 jQuery)显示/隐藏隐藏的 HTML 表格行

    Edit 下面已经回答了这个问题 我想要一个 HTML 表 其中每行之间都有隐藏行 其中包含有关顶级行的更多信息 单击第一列中的展开 折叠图像链接时 隐藏行的可见性将从 display none 切换 显示 表行 我已经有一段时间没有编写
  • pandas - 合并两个数据框覆盖并指定要保留哪些列

    我试图合并两个熊猫数据框 尽管我想要的实际上可能不是合并 我在两个匹配的框架中有两列 一列共享可用于连接的唯一值 另一列有一个空字段和一个填充字段 我想在匹配唯一字段时覆盖空字段 但只保留被覆盖的列 我不想要第二个 DataFrame 中的