Je pratique des K-means en utilisant python. Je travaille avec un ensemble de données d'achat, et l'ensemble de données en entrée ressemble à ceci.Comment traiter les différentes échelles de valeurs pour chaque coordonnée dans l'algorithme K-Means?
en-têtes de table d'entrée:
- [ID utilisateur]
- [money_spent_on_clothes] int
- [money_spent_on_food] int
- [money_spent_on_shoes] int
- [money_spent_on_Monday] int
- [money_spent_on_Tuesday ] int
- [money_spent_on_We dnesday] int
- [money_spent_on_Thursday] int
- [money_spent_on_Friday] int
- [shopping_hours_am] int
- [shopping_hours_pm] int
Je veux utiliser combien ils dépensent dans chaque catégorie, ce le jour où ils magasinent le plus, et le nombre d'heures qu'ils passent à magasiner au cours de la journée en tenant compte du regroupement des utilisateurs.
Il y a peu de divergences dans l'ensemble de données.
- unités ne correspondent pas: $ par rapport à l'heure
- types de fonctions sont mélangés. Les 3 premières caractéristiques concernent la catégorie, les 5 prochaines caractéristiques concernent le jour de la semaine et les 2 dernières caractéristiques sont le temps qu'elles passent pendant la journée (am vs. pm).
Je me demande si K-means peut être fait sur cet ensemble de données & fonctionnalités que je l'ai dit, et si cela peut être fait, quel genre de normalisation doit être appliqué dans l'ordre pour que cela fonctionne?
Merci d'avance!
Normalement, la mise à l'échelle est effectuée colonne par colonne, il n'y a donc rien à craindre. Ou avez-vous quelque chose d'autre à l'esprit. Avez-vous essayé le StandardScaler de scikit-learn? –
Merci. Je vais essayer Standardscaler. Je suis heureux de savoir que le fait d'avoir différents types de fonctionnalités comme ci-dessus n'est pas un problème tant qu'ils sont mis à l'échelle. –