学无先后,达者为师

网站首页 编程语言 正文

使用pd.merge表连接出现多余行的问题解决_python

作者:路明非Re   更新时间: 2022-08-07 编程语言

本文的目标是将表1论文及出版物与表2出版物及其指标进行匹配。

表1 论文出版物信息(存在空值)

表2 出版物指标信息

利用pandas的merge函数实现表的左外连接。左外连接即左表的外连接,左表保持不变,匹配右表的行(合并后右表肯能存在空值)。

paperPublicationIndicator = pd.merge(paperPublication,publicationIndicator,
    how='left',left_on='出版物',right_on='名称',sort=False)

结果发现连接后表相比于表1论文出版物 多出来13行。进行探究发现是表2出版物指标信息中存在 出版物A-指标1,出版物A-指标2这样的出版物重复行。进行匹配后会出现:

出版物  名称  指标
出版物A  出版物A  指标1
出版物A  出版物A  指标2   #多余的行

这里选择预先删除 表2出版物指标 中的重复出版物信息。

publicationIndicator.drop_duplicates(subset=['名称'],
		keep='first',inplace=True)

这样结果就没有问题了。

原文链接:https://blog.csdn.net/yefan_001/article/details/124611893

栏目分类
最近更新