51 #include <QSharedPointer>
75 typedef QSharedPointer<KMeans>
SPtr;
93 explicit KMeans(QString distance = QString(
"sqeuclidean") ,
94 QString start = QString(
"sample"),
95 qint32 replicates = 1,
96 QString emptyact = QString(
"error"),
129 bool calculate( Eigen::MatrixXd X,
131 Eigen::VectorXi& idx,
133 Eigen::VectorXd& sumD,
146 Eigen::MatrixXd distfun(
const Eigen::MatrixXd& X,
159 bool batchUpdate(
const Eigen::MatrixXd& X,
161 Eigen::VectorXi& idx);
173 void gcentroids(
const Eigen::MatrixXd& X,
174 const Eigen::VectorXi& index,
175 const Eigen::VectorXi& clusts,
176 Eigen::MatrixXd& centroids,
177 Eigen::VectorXi& counts);
189 bool onlineUpdate(
const Eigen::MatrixXd& X,
191 Eigen::VectorXi& idx);
202 double unifrnd(
double a,
double b);
204 std::string m_sDistance;
205 std::string m_sStart;
207 std::string m_sEmptyact;
226 Eigen::VectorXi previdx;