如果您的python数据帧如下所示:
ID_1 ID_2 haplotypeID locus
A1 A1 hap.1.1 KIRa
A1 A1 hap.1.2 KIRa
A2 A2 hap.2.1 KIRa
A2 A2 hap.2.2 KIRa
A3 A3 hap.1.1 KIRa
A4 A4 hap.2.2 KIRa
A4 A4 hap.1.2 KIRa
A1 A1 hap.1.1 KIRb
A2 A2 hap.2.1 KIRb
A2 A2 hap.2.2 KIRb
A3 A3 hap.1.1 KIRb
A3 A3 hap.1.2 KIRb
A4 A4 hap.2.2 KIRb
A4 A4 hap.1.2 KIRb
A1 A1 hap.1.1 KIRc
A2 A2 hap.2.1 KIRc
A3 A3 hap.1.1 KIRc
A3 A3 hap.1.2 KIRc
A4 A4 hap.1.2 KIRc
共有4列,分别命名为:idu1、idu2、单倍型ID和位点。 我只想保留为3列ID\u 1、ID\u 2和locus复制的行对。在上面的例子中,输出结果如下:
ID_1 ID_2 haplotypeID locus
A1 A1 hap.1.1 KIRa
A1 A1 hap.1.2 KIRa
A2 A2 hap.2.1 KIRa
A2 A2 hap.2.2 KIRa
A4 A4 hap.2.2 KIRa
A4 A4 hap.1.2 KIRa
A2 A2 hap.2.1 KIRb
A2 A2 hap.2.2 KIRb
A3 A3 hap.1.1 KIRb
A3 A3 hap.1.2 KIRb
A4 A4 hap.2.2 KIRb
A4 A4 hap.1.2 KIRb
A3 A3 hap.1.1 KIRc
A3 A3 hap.1.2 KIRc
我希望有人能帮助我。提前谢谢!你知道吗
试试这个:
或者
df.duplicated(['ID_1', 'ID_2', 'locus'])
或df[['ID_1', 'ID_2', 'locus']].duplicated()
返回布尔数组。对于重复的条目,相应的元素为True(默认情况下,only the first ones)。通过传递keep=False
,可以使所有的副本都具有真值。其余的是布尔索引。你知道吗相关问题 更多 >
编程相关推荐