【问题标题】:Pandas compare two columns write into another one熊猫比较两列写入另一列
【发布时间】:2018-05-10 13:53:41
【问题描述】:

嗯,这是我第一次使用 Stack。抱歉,如果我将一个已经存在的主题翻倍,但如果我在堆栈中发现如何比较两列,我不知道如何完成我的工作。 我必须 csv、A 和 B。在 A 中有一个名称和 ID 列表,而在 B 中只有一个带有其他信息的名称列表。这两个文件的行数不同。 我想编写一个读取 A 和 B 文件的 python 脚本,并写入一个专用列,如果 A 名称和 B 名称相同,它在 A 中找到的 id。我不想使用 excel,我正在尝试提高我的 Python 技能,因为我正在使用越来越多的 matplotlib、pandas、seaborn 来进行 dataviz。 任何的想法? 非常感谢,如果我误用了 stackoverflow 问题系统,我们深表歉意

三角

【问题讨论】:

标签: python pandas compare


【解决方案1】:

使用合并:

import pandas as pd

a = pd.read_csv(r'path to a.csv')
b = pd.read_csv(r'path to b.csv')

df = pd.merge(a,b, on='Name', how='inner')

how 中使用不同类型的连接来获得所需的结果。

【讨论】:

  • 非常感谢克里斯,我找到了相同的解决方案,除了函数 how'inner':这是什么意思?
  • @TristanSalord 严格来说,您希望如何加入您的数据。 Inner 连接只会保留在两个数据集中找到的记录。 Outer 连接将匹配匹配的记录并保留不匹配的记录。还有左连接和右连接。它来自 SQL。阅读 panadas.merge 文档以了解更多信息。 pandas.pydata.org/pandas-docs/stable/generated/…
  • 啊,好!谢谢!是的,我发现它就像我使用 oracle sql 时一样。感谢您的回复!它帮助很大,我学到了新东西!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-03-31
  • 2017-12-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-09-14
  • 2020-06-08
相关资源
最近更新 更多