嗨 我有两个CSV文件作为输入,例如:
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的column 1和file1的column 2、3、4、5 merged,同时比较file2的column 2和file 1的column 6,并且只选择匹配的行。在
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)
但它不起作用。你能帮我修改我的代码还是给我一个别的方法? 谢谢你的帮助!在
这个怎么样:
顺便说一句:您使用的格式(
dialect='excel-tab'
)通常称为TSV,而不是CSV,尽管它是CSV的变体。你还必须确保你的值是用制表符隔开的,而不是像你的帖子那样用空格隔开。我猜是的,你只有空格是因为堆栈溢出格式问题?在又快又脏:
输出:
^{pr2}$相关问题 更多 >
编程相关推荐