Phylogeny Clustering: private API
PortfolioOptimisers.HClE_HCl — Type
const HClE_HCl = Union{<:ClustersEstimator{<:Any, <:Any,
<:AbstractHierarchicalClusteringAlgorithm,
<:Any},
<:Clusters{<:Clustering.Hclust, <:Any, <:Any, <:Any},
<:NetworkClustersEstimator{<:Any,
<:AbstractHierarchicalClusteringAlgorithm}}Alias for a hierarchical clustering estimator or result.
Matches either a ClustersEstimator parameterised with a hierarchical clustering algorithm, or a Clusters result wrapping a Clustering.Hclust. Used internally for dispatch in hierarchical clustering workflows.
Related
PortfolioOptimisers._clusterise — Method
_clusterise(
alg::HClustAlgorithm,
onc::AbstractOptimalNumberClustersEstimator,
S::AbstractMatrix{<:Union{var"#s136", var"#s53"} where {var"#s136"<:Number, var"#s53"<:AbstractJuMPScalar}},
D::AbstractMatrix{<:Union{var"#s136", var"#s53"} where {var"#s136"<:Number, var"#s53"<:AbstractJuMPScalar}},
P::AbstractMatrix{<:Union{var"#s136", var"#s53"} where {var"#s136"<:Number, var"#s53"<:AbstractJuMPScalar}};
branchorder
) -> Clusters{Clustering.Hclust{T}, var"#s185", var"#s1851", <:AbstractMatrix{var"#s137"}, <:Integer} where {T<:Real, var"#s137"<:(Union{var"#s136", var"#s53"} where {var"#s136"<:Number, var"#s53"<:AbstractJuMPScalar}), var"#s185"<:AbstractMatrix{var"#s137"}, var"#s137"<:(Union{var"#s136", var"#s53"} where {var"#s136"<:Number, var"#s53"<:AbstractJuMPScalar}), var"#s1851"<:AbstractMatrix{var"#s137"}, var"#s137"<:(Union{var"#s136", var"#s53"} where {var"#s136"<:Number, var"#s53"<:AbstractJuMPScalar})}
Internal dispatch helper for constructing a Clusters result within a network-based clustering workflow.
Selects the appropriate clustering routine based on alg, determines the optimal number of clusters, and returns a Clusters result encapsulating all relevant outputs.
Algorithm
Cluster
P, through the branch thatalgselects, givingres.HClustAlgorithm:Clustering.hclustunderalg.linkageandbranchorder.DBHT:DBHTsoverPandS, whose last returned value is the clustering.AbstractNonHierarchicalClusteringAlgorithm:optimal_number_clusters, which answers with the clustering and the count together.
Select the number of clusters
kwithoptimal_number_clustersoveronc,resandP. The third branch holdskfrom step 1 already.Assemble the
Clustersresult fromres,S,D,Pandk.
Arguments
alg: Clustering algorithm.alg::HClustAlgorithm: Applies hierarchical clustering viaClustering.hcluston the pseudo-distance matrixP.alg::DBHT: Applies Direct Bubble Hierarchical Tree clustering viaDBHTsonPandS.alg::AbstractNonHierarchicalClusteringAlgorithm: Applies non-hierarchical clustering viaoptimal_number_clustersonP.
onc: Optimal number of clusters estimator.S: Similarity matrix.D: Distance matrix.P::MatNum: Symmetric pseudo-distance matrix derived from the network or similarity structure.branchorder: Branch ordering strategy for hierarchical clustering.
Returns
clr::Clusters: Clustering result containing the clustering object, similarity matrix, distance matrix, pseudo-distance matrix, and optimal number of clusters.
Related