1#ifndef KMEANS_MATRIX_HPP
2#define KMEANS_MATRIX_HPP
26template<
typename Index_,
typename Data_>
60template<
typename Index_,
typename Data_>
96template<
typename Index_,
typename Data_>
132template<
typename Index_,
typename Data_>
163 virtual std::unique_ptr<RandomAccessExtractor<Index_, Data_> >
new_extractor()
const = 0;
170 virtual std::unique_ptr<ConsecutiveAccessExtractor<Index_, Data_> >
new_extractor(Index_ start, Index_ length)
const = 0;
178 virtual std::unique_ptr<IndexedAccessExtractor<Index_, Data_> >
new_extractor(
const Index_* sequence, std::size_t length)
const = 0;
185template<
class Matrix_>
186using Index =
decltype(I(std::declval<Matrix_>().num_observations()));
Interface for matrix data.
Definition Matrix.hpp:133
virtual std::unique_ptr< ConsecutiveAccessExtractor< Index_, Data_ > > new_extractor(Index_ start, Index_ length) const =0
virtual std::size_t num_dimensions() const =0
virtual std::unique_ptr< RandomAccessExtractor< Index_, Data_ > > new_extractor() const =0
virtual Index_ num_observations() const =0
virtual std::unique_ptr< IndexedAccessExtractor< Index_, Data_ > > new_extractor(const Index_ *sequence, std::size_t length) const =0
Extractor for accessing random observations.
Definition Matrix.hpp:27
virtual const Data_ * get_observation(Index_ i)=0
Perform k-means clustering.
Definition compute_wcss.hpp:16