K-means does not know that one column measures kilometres and another measures years. It sees numbers and calculates distances. If one feature spans much larger numerical values, it can dominate those distances before anyone has decided that it deserves more influence.
Scikit-learn’s clustering documentation describes k-means and its within-cluster distance objective. Scaling is therefore part of defining the problem, not merely tidying the input file.
A deliberately small example
Imagine two fictional objects described by age and distance travelled. Their ages differ by 2 years and their distances by 1,000 kilometres. In an unscaled squared Euclidean calculation, the contributions are 2² = 4 and 1,000² = 1,000,000. The distance column overwhelms the age column numerically.
Express the same travel difference in thousands of kilometres and its contribution becomes 1² = 1. The physical difference has not changed, but the calculation has. That is why units and preprocessing choices can alter the clusters.
Standardisation commonly centres features and scales by their variability. It can make different numerical ranges more comparable, but it does not prove that every feature is equally useful or that all should receive equal weight. Scikit-learn’s scaling example illustrates the broader effect of scale on distance-based analysis.
Before fitting, record what each feature means, its units, missing-value handling and whether extreme values are genuine. A rare but valid high value should not be deleted solely because it makes a convenient plot harder to obtain.
If you separate training and evaluation data, learn preprocessing parameters on the training portion and apply the same transformation to the other portion. Recomputing a different scale for each set changes the space in which the model operates.
Compare cluster assignments under defensible preprocessing choices and inspect representative records. Do not select the version merely because the groups look more dramatic. The useful result is a grouping whose distance assumptions make sense for the question you are trying to answer.

