コード例 #1
0
ファイル: btol.py プロジェクト: bh0085/compbio
  def ali_in_tree(self,aliname = 'group2.stk',
                  rank = 'genus',
                  **kwargs):
    all_seqs = ali.get_seqs(aliname)
    alinodes = ali.get_taxnodes(aliname)

    aliranks = [t.rank if t else None for t in alinodes]
    all_leaves = self.t.get_terminals()
    leafnodes = self.leafNodes(reset = mod(reset, 2))
    leafranks =[n.rank if n else None for n in leafnodes]
 
    ali_families = ali.get_taxon_forall(rank = rank,aliname = aliname,
                                        **mem.sr(kwargs))
    leaf_families=  self.getTaxon(rank = rank, **mem.sr(kwargs))

    aset = set(ali_families)
    lset = set(leaf_families)

    a_domains =[(node, ncbi.get_taxon(node,'superkingdom')) for node in aset]
    l_domains =[(node, ncbi.get_taxon(node,'superkingdom')) for node in lset]
    
    bac_domain = [x[1] for x in l_domains if ncbi.sciname(x[1])== 'Bacteria'][0]

    l_bacs = set((l[0] for l in l_domains if l[1] == bac_domain))
    a_bacs = set((a[0] for a in a_domains if a[1] == bac_domain))

    leaf_bacteria = [leaf  if leaf in l_bacs else None for leaf in leaf_families]
    ali_bacteria =  [a  if a  in a_bacs else None for a in ali_families]
  
    return leaf_bacteria, ali_bacteria, leafnodes, alinodes
コード例 #2
0
ファイル: ali.py プロジェクト: bh0085/compbio
 def setTaxon(aliname = None, rank = None,**kwargs):
   assert aliname != None and rank != None
   nodes = get_taxnodes(aliname,**mem.sr(kwargs))
   taxon = [ncbi.get_taxon(node, rank=rank) 
            if node else None for node in nodes]
   return taxon
コード例 #3
0
ファイル: btol.py プロジェクト: bh0085/compbio
 def setTaxon(BTInstance = None, rank = None, **kwargs):
   assert rank; assert BTInstance
   leafnodes = BTInstance.leafNodes(**mem.sr(kwargs))
   leaf_families = [ncbi.get_taxon(node, rank=rank) 
                    if node else None for node in leafnodes]
   return leaf_families
コード例 #4
0
ファイル: ali.py プロジェクト: bh0085/compbio
 def set_taxon_forsome(nodes = None, rank = None,**kwargs):
   assert nodes != None and rank != None
   taxon = [ncbi.get_taxon(node, rank = rank)
            if node else None for node in nodes]
   return taxon