public class PhylogenyMethods
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static class |
PhylogenyMethods.DESCENDANT_SORT_PRIORITY |
static class |
PhylogenyMethods.PhylogenyNodeField |
static class |
PhylogenyMethods.TAXONOMY_EXTRACTION |
Modifier and Type | Method and Description |
---|---|
static boolean |
areAllChildrenDuplications(PhylogenyNode n) |
static DescriptiveStatistics |
calculatBranchLengthStatistics(Phylogeny phy) |
static java.util.List<DescriptiveStatistics> |
calculatConfidenceStatistics(Phylogeny phy) |
static int |
calculateDepth(PhylogenyNode node) |
double |
calculateDistance(PhylogenyNode node1,
PhylogenyNode node2)
Calculates the distance between PhylogenyNodes node1 and node2.
|
static double |
calculateDistanceToRoot(PhylogenyNode node) |
double |
calculateFurthestDistance(Phylogeny phylogeny) |
static short |
calculateMaxBranchesToLeaf(PhylogenyNode node) |
static int |
calculateMaxDepth(Phylogeny phy) |
static double |
calculateMaxDistanceToRoot(Phylogeny phy) |
static int |
calculateNumberOfExternalNodesWithoutTaxonomy(PhylogenyNode node) |
static DescriptiveStatistics |
calculatNumberOfDescendantsPerNodeStatistics(Phylogeny phy) |
java.lang.Object |
clone() |
static int |
countNumberOfPolytomies(Phylogeny phy) |
static void |
deleteExternalNodesNegativeSelection(java.util.Set<java.lang.Integer> to_delete,
Phylogeny phy) |
static void |
deleteExternalNodesNegativeSelection(java.lang.String[] node_names_to_delete,
Phylogeny p) |
static void |
deleteExternalNodesPositiveSelection(java.util.Set<Taxonomy> species_to_keep,
Phylogeny phy) |
static java.util.List<java.lang.String> |
deleteExternalNodesPositiveSelection(java.lang.String[] node_names_to_keep,
Phylogeny p) |
static java.util.List<PhylogenyNode> |
getAllDescendants(PhylogenyNode node) |
static java.awt.Color |
getBranchColorValue(PhylogenyNode node)
Convenience method
|
static double |
getBranchWidthValue(PhylogenyNode node)
Convenience method
|
static double |
getConfidenceValue(PhylogenyNode node)
Convenience method
|
static double[] |
getConfidenceValuesAsArray(PhylogenyNode node)
Convenience method
|
static Taxonomy |
getExternalDescendantsTaxonomy(PhylogenyNode node)
Returns taxonomy t if all external descendants have
the same taxonomy t, null otherwise.
|
PhylogenyNode |
getFarthestNode1() |
PhylogenyNode |
getFarthestNode2() |
static PhylogenyNode |
getFurthestDescendant(PhylogenyNode node) |
static PhylogenyMethods |
getInstance() |
static double |
getMaximumConfidenceValue(Phylogeny phy)
Returns the largest confidence value found on phy.
|
static int |
getMinimumDescendentsPerInternalNodes(Phylogeny phy) |
java.util.List<PhylogenyNode> |
getOrthologousNodes(Phylogeny phy,
PhylogenyNode node)
Returns all orthologs of the external PhylogenyNode n of this Phylogeny.
|
static java.lang.String |
getSpecies(PhylogenyNode node)
Convenience method for display purposes.
|
static java.util.List<PhylogenyNode> |
getSuperOrthologousNodes(PhylogenyNode n)
Returns all Nodes which are connected to external PhylogenyNode n of this
Phylogeny by a path containing only speciation events.
|
static java.lang.String |
getTaxonomyIdentifier(PhylogenyNode node)
Convenience method for display purposes.
|
static java.util.List<PhylogenyNode> |
getUltraParalogousNodes(PhylogenyNode n)
Returns all Nodes which are connected to external PhylogenyNode n of this
Phylogeny by a path containing, and leading to, only duplication events.
|
static java.lang.String |
inferCommonPartOfScientificNameOfDescendants(PhylogenyNode node) |
boolean |
isAreOrthologous(PhylogenyNode node1,
PhylogenyNode node2) |
static boolean |
isHasExternalDescendant(PhylogenyNode node) |
static boolean |
isTaxonomyHasIdentifierOfGivenProvider(Taxonomy tax,
java.lang.String[] providers) |
static void |
midpointRoot(Phylogeny phylogeny) |
static void |
normalizeBootstrapValues(Phylogeny phylogeny,
double max_bootstrap_value,
double max_normalized_value) |
static java.util.List<PhylogenyNode> |
obtainAllNodesAsList(Phylogeny phy) |
static java.util.Set<Taxonomy> |
obtainDistinctTaxonomies(PhylogenyNode node)
Returns the set of distinct taxonomies of
all external nodes of node.
|
static java.util.SortedMap<Taxonomy,java.lang.Integer> |
obtainDistinctTaxonomyCounts(PhylogenyNode node)
Returns a map of distinct taxonomies of
all external nodes of node.
|
PhylogenyNode |
obtainLCA(PhylogenyNode node1,
PhylogenyNode node2)
Returns the LCA of PhylogenyNodes node1 and node2.
|
static void |
orderAppearance(PhylogenyNode n,
boolean order,
boolean order_ext_alphabetically,
PhylogenyMethods.DESCENDANT_SORT_PRIORITY pri)
Arranges the order of childern for each node of this Phylogeny in such a
way that either the branch with more children is on top (right) or on
bottom (left), dependent on the value of boolean order.
|
static void |
postorderBranchColorAveragingExternalNodeBased(Phylogeny p) |
static Phylogeny[] |
readPhylogenies(PhylogenyParser parser,
java.io.File file) |
static Phylogeny[] |
readPhylogenies(PhylogenyParser parser,
java.util.List<java.io.File> files) |
static void |
removeNode(PhylogenyNode remove_me,
Phylogeny phylogeny) |
static java.util.List<PhylogenyNode> |
searchData(java.lang.String query,
Phylogeny phy,
boolean case_sensitive,
boolean partial) |
static java.util.List<PhylogenyNode> |
searchDataLogicalAnd(java.lang.String[] queries,
Phylogeny phy,
boolean case_sensitive,
boolean partial) |
static void |
setBootstrapConfidence(PhylogenyNode node,
double bootstrap_confidence_value)
Convenience method.
|
static void |
setBranchColorValue(PhylogenyNode node,
java.awt.Color color) |
static void |
setBranchWidthValue(PhylogenyNode node,
double branch_width_value)
Convenience method
|
static void |
setConfidence(PhylogenyNode node,
double confidence_value)
Convenience method.
|
static void |
setConfidence(PhylogenyNode node,
double confidence_value,
java.lang.String type)
Convenience method.
|
static void |
setScientificName(PhylogenyNode node,
java.lang.String scientific_name) |
static void |
setTaxonomyCode(PhylogenyNode node,
java.lang.String taxonomy_code)
Convenience method to set the taxonomy code of a phylogeny node.
|
static void |
sortNodeDescendents(PhylogenyNode node,
PhylogenyMethods.DESCENDANT_SORT_PRIORITY pri) |
static int |
taxonomyBasedDeletionOfExternalNodes(Phylogeny reference,
Phylogeny to_be_stripped)
Removes from Phylogeny to_be_stripped all external Nodes which are
associated with a species NOT found in Phylogeny reference.
|
static void |
transferInternalNamesToBootstrapSupport(Phylogeny phy) |
static void |
transferInternalNodeNamesToConfidence(Phylogeny phy) |
static void |
transferNodeNameToField(Phylogeny phy,
PhylogenyMethods.PhylogenyNodeField field,
boolean external_only) |
public double calculateDistance(PhylogenyNode node1, PhylogenyNode node2)
node1
- node2
- public double calculateFurthestDistance(Phylogeny phylogeny)
public java.lang.Object clone() throws java.lang.CloneNotSupportedException
clone
in class java.lang.Object
java.lang.CloneNotSupportedException
public PhylogenyNode getFarthestNode1()
public PhylogenyNode getFarthestNode2()
public PhylogenyNode obtainLCA(PhylogenyNode node1, PhylogenyNode node2)
node1
- node2
- public java.util.List<PhylogenyNode> getOrthologousNodes(Phylogeny phy, PhylogenyNode node)
PRECONDITION: This tree must be binary and rooted, and speciation - duplication need to be assigned for each of its internal Nodes.
Returns null if this Phylogeny is empty or if n is internal.
n
- external PhylogenyNode whose orthologs are to be returnedpublic boolean isAreOrthologous(PhylogenyNode node1, PhylogenyNode node2)
public static final Phylogeny[] readPhylogenies(PhylogenyParser parser, java.io.File file) throws java.io.IOException
java.io.IOException
public static final Phylogeny[] readPhylogenies(PhylogenyParser parser, java.util.List<java.io.File> files) throws java.io.IOException
java.io.IOException
public static final void transferInternalNodeNamesToConfidence(Phylogeny phy)
public static final void transferInternalNamesToBootstrapSupport(Phylogeny phy)
public static final void sortNodeDescendents(PhylogenyNode node, PhylogenyMethods.DESCENDANT_SORT_PRIORITY pri)
public static final void transferNodeNameToField(Phylogeny phy, PhylogenyMethods.PhylogenyNodeField field, boolean external_only) throws PhyloXmlDataFormatException
PhyloXmlDataFormatException
public static boolean areAllChildrenDuplications(PhylogenyNode n)
public static int calculateDepth(PhylogenyNode node)
public static double calculateDistanceToRoot(PhylogenyNode node)
public static short calculateMaxBranchesToLeaf(PhylogenyNode node)
public static int calculateMaxDepth(Phylogeny phy)
public static double calculateMaxDistanceToRoot(Phylogeny phy)
public static int countNumberOfPolytomies(Phylogeny phy)
public static DescriptiveStatistics calculatNumberOfDescendantsPerNodeStatistics(Phylogeny phy)
public static DescriptiveStatistics calculatBranchLengthStatistics(Phylogeny phy)
public static java.util.List<DescriptiveStatistics> calculatConfidenceStatistics(Phylogeny phy)
public static java.util.Set<Taxonomy> obtainDistinctTaxonomies(PhylogenyNode node)
public static java.util.SortedMap<Taxonomy,java.lang.Integer> obtainDistinctTaxonomyCounts(PhylogenyNode node)
public static int calculateNumberOfExternalNodesWithoutTaxonomy(PhylogenyNode node)
public static void deleteExternalNodesNegativeSelection(java.util.Set<java.lang.Integer> to_delete, Phylogeny phy)
public static void deleteExternalNodesNegativeSelection(java.lang.String[] node_names_to_delete, Phylogeny p) throws java.lang.IllegalArgumentException
java.lang.IllegalArgumentException
public static void deleteExternalNodesPositiveSelection(java.util.Set<Taxonomy> species_to_keep, Phylogeny phy)
public static java.util.List<java.lang.String> deleteExternalNodesPositiveSelection(java.lang.String[] node_names_to_keep, Phylogeny p)
public static java.util.List<PhylogenyNode> getAllDescendants(PhylogenyNode node)
public static java.awt.Color getBranchColorValue(PhylogenyNode node)
node
- public static double getBranchWidthValue(PhylogenyNode node)
public static double getConfidenceValue(PhylogenyNode node)
public static double[] getConfidenceValuesAsArray(PhylogenyNode node)
public static Taxonomy getExternalDescendantsTaxonomy(PhylogenyNode node)
public static PhylogenyNode getFurthestDescendant(PhylogenyNode node)
public static PhylogenyMethods getInstance()
public static double getMaximumConfidenceValue(Phylogeny phy)
public static int getMinimumDescendentsPerInternalNodes(Phylogeny phy)
public static java.lang.String getSpecies(PhylogenyNode node)
public static java.util.List<PhylogenyNode> getSuperOrthologousNodes(PhylogenyNode n)
PRECONDITION: This tree must be binary and rooted, and speciation - duplication need to be assigned for each of its internal Nodes.
Returns null if this Phylogeny is empty or if n is internal.
n
- external PhylogenyNode whose strictly speciation related Nodes
are to be returnedpublic static java.lang.String getTaxonomyIdentifier(PhylogenyNode node)
public static java.util.List<PhylogenyNode> getUltraParalogousNodes(PhylogenyNode n)
PRECONDITION: This tree must be binary and rooted, and speciation - duplication need to be assigned for each of its internal Nodes.
Returns null if this Phylogeny is empty or if n is internal.
(Last modified: 10/06/01)
n
- external PhylogenyNode whose ultra paralogs are to be returnedpublic static java.lang.String inferCommonPartOfScientificNameOfDescendants(PhylogenyNode node)
public static boolean isHasExternalDescendant(PhylogenyNode node)
public static boolean isTaxonomyHasIdentifierOfGivenProvider(Taxonomy tax, java.lang.String[] providers)
public static void midpointRoot(Phylogeny phylogeny)
public static void normalizeBootstrapValues(Phylogeny phylogeny, double max_bootstrap_value, double max_normalized_value)
public static java.util.List<PhylogenyNode> obtainAllNodesAsList(Phylogeny phy)
public static void postorderBranchColorAveragingExternalNodeBased(Phylogeny p)
public static void removeNode(PhylogenyNode remove_me, Phylogeny phylogeny)
public static java.util.List<PhylogenyNode> searchData(java.lang.String query, Phylogeny phy, boolean case_sensitive, boolean partial)
public static java.util.List<PhylogenyNode> searchDataLogicalAnd(java.lang.String[] queries, Phylogeny phy, boolean case_sensitive, boolean partial)
public static void setBootstrapConfidence(PhylogenyNode node, double bootstrap_confidence_value)
public static void setBranchColorValue(PhylogenyNode node, java.awt.Color color)
public static void setBranchWidthValue(PhylogenyNode node, double branch_width_value)
public static void setConfidence(PhylogenyNode node, double confidence_value)
public static void setConfidence(PhylogenyNode node, double confidence_value, java.lang.String type)
public static void setScientificName(PhylogenyNode node, java.lang.String scientific_name)
public static void setTaxonomyCode(PhylogenyNode node, java.lang.String taxonomy_code) throws PhyloXmlDataFormatException
node
- taxonomy_code
- PhyloXmlDataFormatException
public static int taxonomyBasedDeletionOfExternalNodes(Phylogeny reference, Phylogeny to_be_stripped)
reference
- a reference Phylogenyto_be_stripped
- Phylogeny to be strippedpublic static void orderAppearance(PhylogenyNode n, boolean order, boolean order_ext_alphabetically, PhylogenyMethods.DESCENDANT_SORT_PRIORITY pri)
order
- decides in which direction to orderpri
-