<div dir="ltr"><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Hi Bow,</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Thank you for the prompt reply.</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Now I am clear about what was going wrong, will rerun the Hmmer analysis with the hmm model files concatenated.</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">I am travelling now and since this analysis was run on our Institute&#39;s HPC, I would have have to wait till next week to test this out and reply.</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif"><br></div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">Regards,</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">--</div><div class="gmail_default" style="font-family:comic sans ms,sans-serif">prakhar</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Wed, Aug 5, 2015 at 12:37 PM, Wibowo Arindrarto <span dir="ltr">&lt;<a href="mailto:w.arindrarto@gmail.com" target="_blank">w.arindrarto@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Prakhar,<br>
<br>
Thanks for uploading your script and test case, first of all. It helps a lot :).<br>
<br>
As for your question, indeed I saw that your output is a concatenation<br>
of two hmmsearch results. If you would like to parse all query<br>
results, instead you should run hmmsearch with a single input file<br>
containing all of your queries. In other words, instead of<br>
concatenating the results, you should concatenate the input HMMs (a<br>
simple `cat` should do). You will still see the results of each query<br>
separately, and I don&#39;t expect them to influence each other.<br>
<br>
This is because the output file begins and ends with a specific<br>
section. When you concatenate two output files, the parser sees that<br>
it has encountered the end section of an output file and stops<br>
parsing. If you run two input HMMs instead, the parser can then see<br>
all the results before encountering the output file&#39;s end section.<br>
<br>
Hope this helps :),<br>
Bow<br>
<div><div class="h5"><br>
On Wed, Aug 5, 2015 at 6:00 AM, Prakhar Gaur &lt;<a href="mailto:prakhar.aaidu16@gmail.com">prakhar.aaidu16@gmail.com</a>&gt; wrote:<br>
&gt; Hello,<br>
&gt;<br>
&gt; Biopython &amp; SearchIO user for over three weeks.<br>
&gt;<br>
&gt; OS - Ubuntu 14,04<br>
&gt; Biopython Bio.__version__ 1.65<br>
&gt; HMMER -- 3.1b2<br>
&gt; Code is here (github) - branch alpha<br>
&gt;<br>
&gt; Briefly, if a hmmer 3 text output is parsed using the &#39;SearchIO.parse()&#39; and<br>
&gt; that file has output from more than one searches only the first result is<br>
&gt; read and rest are ignored.<br>
&gt;<br>
&gt; Details -- Used &#39;hmmsearch&#39; with pfam models against a database of proteins.<br>
&gt; Since I wanted to club some domain models together, hence concatenated the<br>
&gt; result into a single text file. As all the domains concatenated together<br>
&gt; belong to a single protein.<br>
&gt;<br>
&gt; When I use SearchIO.parse() to read this file, the Queryresult object has<br>
&gt; only the top entry (first hmm models result), iterating over the Queryresult<br>
&gt; does not give the other results.<br>
&gt;<br>
&gt; To test this I have split the results file to have the results of a single<br>
&gt; hmmsearch run in each file, after this parse works fine.<br>
&gt; But this use case (single result in one file) is for &#39;SearchIO.read()&#39;.<br>
&gt; Consequently I would expect &#39;SearchIO.parse()&#39; to be able to parse multiple<br>
&gt; results from a single file.<br>
&gt;<br>
&gt; As test case from my repo, first run the script<br>
&gt; &#39;hmmer-SearchIO-text-parser.py&#39;, the output file &#39;Q9UP38.out&#39; would be read<br>
&gt;  this represents the use case in which the result file has multiple (2)<br>
&gt; entries.<br>
&gt;<br>
&gt; Are my expectations from &#39;SearchIO.parse()&#39; correct ? Or am I missing<br>
&gt; something ?<br>
&gt;<br>
&gt; Reply, Comments, Pointers etc. are all welcome.<br>
&gt;<br>
&gt; --<br>
&gt; Thanking you,<br>
&gt; --<br>
&gt; Prakhar Gaur<br>
&gt;<br>
&gt;<br>
</div></div>&gt; _______________________________________________<br>
&gt; Biopython mailing list  -  <a href="mailto:Biopython@mailman.open-bio.org">Biopython@mailman.open-bio.org</a><br>
&gt; <a href="http://mailman.open-bio.org/mailman/listinfo/biopython" rel="noreferrer" target="_blank">http://mailman.open-bio.org/mailman/listinfo/biopython</a><br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">Thanking you,<br>-- <br>Prakhar Gaur<br><br></div>
</div>