Hello all,<br><br>  I am working on merging two text files with fields separated by commas. The files are in this format:<br><br>File ONE:<br><i>Species, Protein ID, E value, Length</i><br>Streptomyces sp. AA4, ZP_05482482, 2.8293600000000001e-140, 5256,  <br>
Streptomyces sp. AA4, ZP_05482482, 8.0333299999999997e-138, 5256,  <br>Streptomyces sp. AA4, ZP_05482482, 1.08889e-124, 5256,  <br>Streptomyces sp. AA4, ZP_07281899, 2.9253900000000001e-140, 5260,<br clear="all"><br>File TWO:<br>
<i>Protein ID, Locus Tag, Start/Stop</i><br>ZP_05482482, StAA4_010100030484, complement(NZ_ACEV01000078.1:25146..40916)<br>ZP_07281899, SSMG_05939, complement(NZ_GG657746.1:6565974..6581756)<br><br>I looked around for other posts about merging text files and I have this program:<br>
one = open(&quot;final.txt&quot;,&#39;r&#39;)<br>two = open(&quot;final_gen.txt&quot;,&#39;r&#39;)<br><br>merge = open(&quot;merged.txt&quot;,&#39;w&#39;)<br>merge.write(&quot;Species,  Locus_Tag,  E_value,  Length, Start/Stop\n&quot;)<br>
<br>for line in one:<br>     print(line.rstrip() + two.readline().strip())<br>     merge.write(str([line.rstrip() + two.readline().strip()]))<br>     merge.write(&quot;\n&quot;)<br>merge.close()<br><br>inc = file(&quot;merged.txt&quot;,&quot;r&quot;)<br>
outc = open(&quot;final_merge.txt&quot;,&quot;w&quot;)<br>for line in inc:<br>    line = line.replace(&#39;[&#39;,&#39;&#39;)<br>    line = line.replace(&#39;]&#39;,&#39;&#39;)<br>    line = line.replace(&#39;{&#39;,&#39;&#39;)<br>
    line = line.replace(&#39;}&#39;,&#39;&#39;)<br>    outc.write(line)<br>    <br>inc.close()<br>outc.close()<br>one.close()<br>two.close()<br><br>This does merge the files. <br>Streptomyces sp. AA4, ZP_05482482, 2.8293600000000001e-140, 5256,ZP_05482482, StAA4_010100030484, complement(NZ_ACEV01000078.1:25146..40916)<br>
Streptomyces sp. AA4, ZP_05482482, 8.0333299999999997e-138, 5256,ZP_05477599, StAA4_010100005861, NZ_ACEV01000013.1:86730..102047<br><br>But file one has multiple instances of the same Protein ID such as ZP_05482482. So the data doesn&#39;t line up anymore.  I would like the program to search for each Protein ID number and write the entry from file 2 in each place and then move on to the next ID number. <br>
<br>Example of desired output:<br>Streptomyces sp. AA4, ZP_05482482, StAA4_010100030484, 2.8293600000000001e-140, 
5256, 
complement(NZ_ACEV01000078.1:25146..40916)<br>Streptomyces sp. AA4, ZP_05482482, StAA4_010100030484, 8.0333299999999997e-138, 5256, 
complement(NZ_ACEV01000078.1:25146..40916)<br><br>I was thinking about writing the text files into a dictionary and then searching for each ID and then insert the content from file TWO into where the IDs match. But I am not sure how to start. Is there a more pythony way to go about doing this? <br>
<br>Thank you for your time and help.<br><br>Regards,<br>Ara<br><br>-- <br>Quis hic locus, quae regio, quae mundi plaga. Ubi sum. Sub ortu solis an sub cardine glacialis ursae.<br>