![]() |
OpenMS
2.5.0
|
Hierarchical clustering with generic clustering functions. More...
#include <OpenMS/COMPARISON/CLUSTERING/ClusterHierarchical.h>
Public Member Functions | |
| ClusterHierarchical () | |
| default constructor More... | |
| ClusterHierarchical (const ClusterHierarchical &source) | |
| copy constructor More... | |
| virtual | ~ClusterHierarchical () |
| destructor More... | |
| template<typename Data , typename SimilarityComparator > | |
| void | cluster (std::vector< Data > &data, const SimilarityComparator &comparator, const ClusterFunctor &clusterer, std::vector< BinaryTreeNode > &cluster_tree, DistanceMatrix< float > &original_distance) |
| Clustering function. More... | |
| void | cluster (std::vector< PeakSpectrum > &data, const BinnedSpectrumCompareFunctor &comparator, double sz, UInt sp, float offset, const ClusterFunctor &clusterer, std::vector< BinaryTreeNode > &cluster_tree, DistanceMatrix< float > &original_distance) |
| clustering function for binned PeakSpectrum More... | |
| double | getThreshold () |
| get the threshold More... | |
| void | setThreshold (double x) |
Private Attributes | |
| double | threshold_ |
| the threshold given to the ClusterFunctor More... | |
Hierarchical clustering with generic clustering functions.
ClusterHierarchical clusters objects with corresponding distancemethod and clusteringmethod.
|
inline |
default constructor
|
inline |
copy constructor
|
inlinevirtual |
destructor
|
inline |
Clustering function.
Cluster data using SimilarityComparator and ClusterFunctor.
Creates a DistanceMatrix (if an empty matrix is passed) and the clustering is started. Clustering stops if the ClusterHierarchical::threshold_ is reached by the ClusterFunctor.
First template parameter is the cluster object type, Second template parameter is the similarity functor applicable to the type.
For example, PeakSpectrum with a PeakSpectrumCompareFunctor.
The similarity functor must provide the similarity calculation with the ()-operator and yield normalized values in range of [0,1] for the type of < Data >.
| data | vector of objects to be clustered |
| comparator | similarity functor fitting for types in data |
| clusterer | a clustermethod implementation, baseclass ClusterFunctor |
| cluster_tree | the vector that will hold the BinaryTreeNodes representing the clustering (for further investigation with the ClusterAnalyzer methods) |
| original_distance | the DistanceMatrix holding the pairwise distances of the elements in data, will be made newly if given size does not fit to the number of elements given in @ data |
References DistanceMatrix< Value >::clear(), DistanceMatrix< Value >::dimensionsize(), DistanceMatrix< Value >::resize(), and DistanceMatrix< Value >::setValueQuick().
Referenced by SpectraMerger::mergeSpectraPrecursors().
|
inline |
get the threshold
|
inline |
set the threshold (in terms of distance) The default is 1, i.e. only at similarity 0 the clustering stops. Warning: clustering is not supported by all methods yet (e.g. SingleLinkage does ignore it).
|
private |
the threshold given to the ClusterFunctor
1.8.16