Skip to main content
`Ctrl`+`K`

# skbio.tree.TreeNode.from_taxonomy

classmethod TreeNode.from_taxonomy(lineage_map)

  Construct a tree from a taxonomy.

  Parameters:
    lineage_map dict, iterable of tuples, or pd.DataFrame

      Mapping of taxon IDs to lineages (iterables of taxonomic units from high to low in ranking).

  Returns:
    TreeNode

      The constructed taxonomy.

  See also

  `from_taxdump`

  Examples

      >>> from skbio.tree import TreeNode
      >>> lineages = [
      ...     ('1', ['Bacteria', 'Firmicutes', 'Clostridia']),
      ...     ('2', ['Bacteria', 'Firmicutes', 'Bacilli']),
      ...     ('3', ['Bacteria', 'Bacteroidetes', 'Sphingobacteria']),
      ...     ('4', ['Archaea', 'Euryarchaeota', 'Thermoplasmata']),
      ...     ('5', ['Archaea', 'Euryarchaeota', 'Thermoplasmata']),
      ...     ('6', ['Archaea', 'Euryarchaeota', 'Halobacteria']),
      ...     ('7', ['Archaea', 'Euryarchaeota', 'Halobacteria']),
      ...     ('8', ['Bacteria', 'Bacteroidetes', 'Sphingobacteria']),
      ...     ('9', ['Bacteria', 'Bacteroidetes', 'Cytophagia'])]
      >>> tree = TreeNode.from_taxonomy(lineages)
      >>> print(tree.ascii_art())
                                    /Clostridia-1
                          /Firmicutes
                         |          \Bacilli- /-2
                /Bacteria|
               |         |                    /-3
               |         |          /Sphingobacteria
               |          \Bacteroidetes      \-8
               |                   |
      ---------|                    \Cytophagia-9
               |
               |                              /-4
               |                    /Thermoplasmata
               |                   |          \-5
                \Archaea- /Euryarchaeota
                                   |          /-6
                                    \Halobacteria
                                              \-7