Привет У меня есть два CSV-файла на входе, например:
file1:
AK163828 chr5 s1 + e1 cttt 4
AK163828 chr5 s2 + e2 gtca 4
AK168688 chr6 s3 + e3 ggcg 4
AK168688 chr6 s4 + e4 tctg 4
file2:
chr6s3+e3 ggcg
chr5s1+e1 cttt
chr6s4+e4 tata
chr5s2+e2 ggcg
#as you can see the file2 is randomly sorted
Я хочу сравнить столбец 1 изfile2 с колонкой 2, 3, 4, 5 объединены из file1 и одновременно с колонкой 2 из file2 со колонкой 6 из файла 1, и выберите только соответствующие строки.
Желаемый вывод:
chr6s3+e3 ggcg
chr5s1+e1 cttt
Я пытался использовать этот код:
import csv
reader1 = csv.reader(open(file1), dialect='excel-tab' )
reader2 = csv.reader(open(file2), dialect='excel-tab' )
for row1, row2 in zip(reader1,reader2):
F1 = row1[1] + row1[2] + row1[3] + row1[4] + '\t' row1[5]
F2 = row2[0] + '\t' + row2[1]
print set(F1) & set(F2)
Но это не работает.Можете ли вы помочь мне исправить мой код или дать мне другой способ сделать это?Спасибо за вашу помощь!