У меня есть большой файл с записями, как был открыт в питона, как:Удалить дубликаты записей в списке с помощью питона
fh_in=open('/xzy/abc', 'r')
parsed_in=csv.reader(fh_in, delimiter=',')
for element in parsed_in:
print(element)
РЕЗУЛЬТАТ:
[ 'ABC', 'CHR9', '3468582', ' NAME1' , 'УЗА', 'GGU']
[ 'DEF', 'CHR9', '14855289', NAME19' , 'UCG', 'GUC']
[, «CHR9 'ТТС' ',' 793946 ',' NAME178 ',' CAG ',' GUC ']
[ 'ABC', 'CHR9', '3468582', 'NAME272', 'ВСТ', 'ГПА']
Я должен извлекать только уникальные записи и удаления записей с одинаковыми значениями в col1, col2 и col3. Как и в этом случае, последняя строка аналогична строке 1 на основе col1, col2 и col3.
Я попробовал два метода, но не удался:
Метод 1:
outlist=[]
for element in parsed_in:
if element[0:3] not in outlist[0:3]:
outlist.append(element)
Метод 2:
outlist=[]
parsed_list=list(parsed_in)
for element in range(0,len(parsed_list)):
if parsed_list[element] not in parsed_list[element+1:]:
outlist.append(parsed_list[element])
Эти и возвращает все записи, а не уникальные записи на основе первые 3 столбца.
Просьба предложить мне способ сделать это
AK
Возможный дубликат [Как удалить дубликаты из списка в Python?] (Http://stackoverflow.com/questions/479897/how-do-you-remove-duplicates-from-a-list-in- python) – kennytm
Не дубликат, поскольку его список уникален на основе только части данных, а не всего набора данных. – MitMaro