有一些问题可能会遇到同元素多列去重问题,下面介绍一种非常简单效率也很快的做法,用pandas来实现。
首先我们看一下数据类型:
G1 G2 a b b a c d d c e f
对这样的两列数据进行同元素去重,最终得到结果为:
G1 G2 a b c d e f
代码如下:
#-*- coding: utf-8 -*- data = {'G1':['a','b','c','d','e'],'G2':['b','a','d','c','f']} data = pd.DataFrame(data) data['G3'] = data['G1'] + '|' + data['G2'] p = [] for i in data['G3'].tolist(): tmp = sorted(i.split('|')) # The most important part,sort p.append(tmp[0] + '|' + tmp[1]) data['G3'] = pd.Series(p) data = data.drop_duplicates('G3')
以上这篇Pandas 同元素多列去重的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。