This PR creates the new subclass historydag.sequence_dag.AmbiguousLeafSequenceHistoryDag which allows leaf sequences to contain ambiguous characters, provides a convenient edge weight function for computing minimum hamming distance on those edges, and provides overridden methods that use that edge weight function.
it also:
provides generalized interface for loading arbitrary tree data, with historydag.from_tree and historydag.history_dag_from_trees,
automatically declines to explode leaves with ambiguous labels in HistoryDag.explode_nodes.
This PR creates the new subclass
historydag.sequence_dag.AmbiguousLeafSequenceHistoryDag
which allows leaf sequences to contain ambiguous characters, provides a convenient edge weight function for computing minimum hamming distance on those edges, and provides overridden methods that use that edge weight function.it also:
historydag.from_tree
andhistorydag.history_dag_from_trees
,HistoryDag.explode_nodes
.