improve my python program to fetch the desire rows by using if condition

Posted by user2560507 on Stack Overflow See other posts from Stack Overflow or by user2560507
Published on 2014-08-23T15:10:05Z Indexed on 2014/08/23 16:20 UTC
Read the original article Hit count: 217

Filed under:

unique.txt file contains: 2 columns with columns separated by tab. total.txt file contains: 3 columns each column separated by tab.

I take each row from unique.txt file and find that in total.txt file. If present then extract entire row from total.txt and save it in new output file.

###Total.txt
column a        column b                    column c         
interaction1    mitochondria_205000_225000  mitochondria_195000_215000   
interaction2    mitochondria_345000_365000  mitochondria_335000_355000    
interaction3    mitochondria_345000_365000  mitochondria_5000_25000      
interaction4    chloroplast_115000_128207   chloroplast_35000_55000    
interaction5    chloroplast_115000_128207   chloroplast_15000_35000    
interaction15   2_10515000_10535000 2_10505000_10525000

###Unique.txt
column a                    column b      
mitochondria_205000_225000  mitochondria_195000_215000        
mitochondria_345000_365000  mitochondria_335000_355000    
mitochondria_345000_365000  mitochondria_5000_25000     
chloroplast_115000_128207   chloroplast_35000_55000    
chloroplast_115000_128207   chloroplast_15000_35000    
mitochondria_185000_205000  mitochondria_25000_45000    
2_16595000_16615000 2_16585000_16605000    
4_2785000_2805000   4_2775000_2795000    
4_11395000_11415000 4_11385000_11405000   
4_2875000_2895000   4_2865000_2885000   
4_13745000_13765000 4_13735000_13755000

My program:

file=open('total.txt')

file2 = open('unique.txt')
all_content=file.readlines()
all_content2=file2.readlines()
store_id_lines = []
ff = open('match.dat', 'w')

for i in range(len(all_content)):
              line=all_content[i].split('\t')
              seq=line[1]+'\t'+line[2]
              for j in range(len(all_content2)):
                     if all_content2[j]==seq:
                           ff.write(seq)
                           break 

Problem:
but istide of giving desire output (values of those 1st column that fulfile the if condition). i nead somthing like if jth of unique.txt == ith of total.txt then write ith row of total.txt into new file.

© Stack Overflow or respective owner

Related posts about python