擅长:python、mysql、java
<p>你必须写一些代码来解析文件。如果你忽略了聚类,你应该能够根据缩进区分科、属和种。在</p>
<p>定义<a href="http://docs.python.org/2/library/collections.html#collections.namedtuple" rel="nofollow">named tuple</a>的最简单方法是:</p>
<pre><code>import collections
Bacterium = collections.namedtuple('Bacterium', ['family', 'genera', 'species'])
</code></pre>
<p>在这个对象的实例中,您可以这样做:</p>
^{pr2}$
<p>解析器应该逐行读取文件,并设置族和属。如果它找到了一个物种,它应该在一个列表中添加一个细菌</p>
<pre><code>with open('cluster0.txt', 'r') as infile:
lines = infile.readlines()
family = None
genera = None
bacteria = []
for line in lines:
# set family and genera.
# if you detect a bacterium:
bacteria.append(Bacterium(family, genera, species))
</code></pre>
<p>一旦您有了每个文件或集群中所有细菌的列表,您可以从所有细菌中进行选择,如下所示:</p>
<pre><code>s = [b for b in bacteria if b.genera == 'Streptomycetaceae']
</code></pre>