微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用python合并键列中具有重复值的两个文件并保持所有排列可能?

如何解决如何使用python合并键列中具有重复值的两个文件并保持所有排列可能?

两个文本文件分别是a.txt和b.txt,如何使用第一个文件的第二列和第二个文件的第一列作为key列,用python合并两个文件输出第三个文件形式?因为key列有重复值,如何保留所有的可能性?a.txtb.txtc.txt

解决方法

你会用熊猫吗?

运行:

import pandas as pd;
a = pd.read_csv('a.txt',names=['chr','capletter','number'])
b = pd.read_csv('b.txt',names=['capletter','letter'])
c = a.merge(b,left_on='capletter',right_on='capletter')
c.to_csv('c.txt',header=False,index=False)

来自 a.txt:

chr1,A,1
chr2,B,2
chr3,3
CHR3,C,4

和b.txt:

A,a
B,b
B,c

你会得到 c.txt:

chr1,1,a
chr2,2,b
chr2,c
chr3,3,b
chr3,c

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