1
$\begingroup$

I want to apply Kmean for clustering after PCA dimensionality reduction. I have standardized data with StandardScaler before the PCA, then I want to train Kmeans for finding clusters. However, the variance among the PCA components could not be of the same order of magnitude.

It is a good practice to standardize the PCA components before the clustering?

$\endgroup$
1
$\begingroup$

If the variables you are using for k-Means clustering are on different scales the variables with the higher variance will dominate the algorithm, by driving the convergence of the k centroids.

Is this something that you can allow, based on your research goals? If, instead, you want all the factors to have equal weight in the clustering, then you should scale them.

$\endgroup$
  • $\begingroup$ Thanks a lot for the answer! $\endgroup$ – Galuoises Jun 13 at 9:05
2
$\begingroup$

Usually PCA already returns standardized components.

Did you compute the variance of each component? Usually, it will be 1.

The more tricky question is whether to use standardization before doing PCA. I don't think there is a general answer for that.

$\endgroup$
  • $\begingroup$ This is the correct answer. PCA will return a standardized set because the variance (and its magnitude) already went into the eigenvectors. As for the scaling before PCA there's always the case of the wine dataset (i.e. try with and without) $\endgroup$ – grochmal Jun 14 at 0:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.