Issues (#8 and #11) have been raised about the flexibility of the current std::vector<std::array<T, N>> pattern used for passing data matrices in and out of this library.
A more flexible alternative is to have a dedicated N-dimensional array class (dkm::ndarray<T>) which has convenient constructors that take both the existing std::vector<std::array<T, N>> and std::vector<std::vector<T>>, which has been requested for some use cases. This class would also have methods to explicitly convert back to these data types after running the kmeans algorithm.
Issues (#8 and #11) have been raised about the flexibility of the current
std::vector<std::array<T, N>>pattern used for passing data matrices in and out of this library.A more flexible alternative is to have a dedicated N-dimensional array class (
dkm::ndarray<T>) which has convenient constructors that take both the existingstd::vector<std::array<T, N>>andstd::vector<std::vector<T>>, which has been requested for some use cases. This class would also have methods to explicitly convert back to these data types after running the kmeans algorithm.