OpenMS
|
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) const |
clustering function for binned PeakSpectrum More... | |
double | getThreshold () const |
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