Normalisation des données en Python

Normalization Data Python



La normalisation des données est une technique qui permet d'obtenir le résultat plus rapidement car la machine doit traiter une plus petite plage de données. La normalisation n'est pas une tâche facile car tous vos résultats dépendent du choix de votre méthode de normalisation. Ainsi, si vous avez choisi la mauvaise méthode pour normaliser vos données, vous pourriez obtenir quelque chose de différent de vos attentes.

La normalisation dépend également du type de données comme les images, le texte, les chiffres, etc. Ainsi, chaque type de données a une méthode différente pour normaliser. Ainsi, dans cet article, nous nous concentrons sur les données numériques.







Méthode 1 : Utilisation de sklearn

La méthode sklearn est une méthode très connue pour normaliser les données.





Dans le numéro de cellule [83] : Nous importons toutes les bibliothèques requises, NumPy et sklearn. Vous pouvez voir que nous importons le prétraitement à partir du sklearn lui-même. C'est pourquoi il s'agit de la méthode de normalisation sklearn.





Dans le numéro de cellule [84] : Nous avons créé un tableau NumPy avec une valeur entière qui n'est pas la même.

Dans le numéro de cellule [85] : Nous avons appelé la méthode normalize à partir du prétraitement et passé le numpy_array, que nous venons de créer en paramètre.



Dans le numéro de cellule [86] : Nous pouvons voir à partir des résultats, toutes nos données entières sont maintenant normalisées entre 0 et 1.

Méthode 2 : normaliser une colonne particulière dans un ensemble de données à l'aide de sklearn

Nous pouvons également normaliser la colonne de l'ensemble de données particulier. En cela, nous allons en discuter.


Dans le numéro de cellule [87] : Nous importons les pandas de la bibliothèque et sklearn.

Dans le numéro de cellule [88] : Nous avons créé un fichier CSV factice, et nous chargeons maintenant ce fichier CSV à l'aide du package pandas (read_csv).

Dans le numéro de cellule [89] : Nous imprimons ce fichier CSV que nous avons récemment chargé.

Dans le numéro de cellule [90] : Nous lisons la colonne particulière du fichier CSV en utilisant le np. array et stockez le résultat dans value_array.

Dans le numéro de cellule [92] , nous avons appelé la méthode normalize à partir du prétraitement et transmis le paramètre value_array.

Méthode 3: Convertir pour normaliser sans utiliser les colonnes pour le tableau (à l'aide de sklearn)

Dans la méthode précédente 2, nous avons expliqué comment normaliser une colonne de fichier CSV particulière. Mais parfois, nous devons normaliser l'ensemble de données dans son intégralité, puis nous pouvons utiliser la méthode ci-dessous où nous normalisons l'ensemble de données dans son ensemble, mais le long de la colonne (axe = 0). Si nous mentionnons l'axe = 1, alors il effectuera une normalisation par ligne. L'axe = 1 est la valeur par défaut.


Dans le numéro de cellule [93] : Nous importons les pandas de la bibliothèque et sklearn.

Dans le numéro de cellule [94] : Nous avons créé un fichier CSV factice (demo_numeric.csv), et nous chargeons maintenant ce fichier CSV à l'aide du package pandas (read_csv).

Dans le numéro de cellule [95] : Nous imprimons ce fichier CSV que nous avons récemment chargé.

Dans le numéro de cellule [96] : Maintenant, nous passons l'intégralité du fichier CSV avec un axe de paramètre supplémentaire = 0, qui indique à la bibliothèque que l'utilisateur souhaite normaliser l'ensemble de l'ensemble de données par colonne.

Dans le numéro de cellule [97] , nous imprimons le résultat et normalisons les données avec une valeur comprise entre 0 et 1.

Méthode 4: Utilisation de MinMaxScaler()

Le sklearn fournit également une autre méthode de normalisation, que nous avons appelée MinMaxScalar. C'est aussi une méthode très populaire car elle est facile à utiliser.


Dans le numéro de cellule [98] : Nous importons tous les packages requis.

Dans le numéro de cellule [99] : Nous avons créé un fichier CSV factice (demo_numeric.csv), et nous chargeons maintenant ce fichier CSV à l'aide du package pandas (read_csv).

Dans le numéro de cellule [100] : Nous imprimons ce fichier CSV que nous avons récemment chargé.

Dans le numéro de cellule [101] : Nous avons appelé le MinMaxScalar à partir de la méthode de prétraitement et créé un objet (min_max_Scalar) pour cela. Nous n'avons passé aucun paramètre car nous devons normaliser les données entre 0 et 1. Mais si vous le souhaitez, vous pouvez ajouter vos valeurs qui seront vues dans la méthode suivante.

Dans le numéro de cellule [102] : Nous lisons d'abord tous les noms des colonnes pour une utilisation ultérieure pour afficher les résultats. Ensuite, nous appelons le fit_tranform à partir de l'objet créé min_max_Scalar et y avons passé le fichier CSV.

Dans le numéro de cellule [103] : On obtient les résultats normalisés qui sont compris entre 0 et 1.

Méthode 5 : Utilisation de MinMaxScaler(feature_range=(x,y))

Le sklearn offre également la possibilité de modifier la valeur normalisée de ce que vous voulez. Par défaut, ils normalisent la valeur entre 0 et 1. Mais il existe un paramètre que nous avons appelé feature_range, qui peut définir la valeur normalisée en fonction de nos besoins.

Dans le numéro de cellule [104] : Nous importons tous les packages requis.

Dans le numéro de cellule [105] : Nous avons créé un fichier CSV factice (demo_numeric.csv), et nous chargeons maintenant ce fichier CSV à l'aide du package pandas (read_csv).

Dans le numéro de cellule [106] : Nous imprimons ce fichier CSV que nous avons récemment chargé.

Dans le numéro de cellule [107] : Nous avons appelé le MinMaxScalar à partir de la méthode de prétraitement et créé un objet (min_max_Scalar) pour cela. Mais nous passons également un autre paramètre à l'intérieur du MinMaxScaler (feature_range). Cette valeur de paramètre, nous avons défini 0 à 2. Alors maintenant, le MinMaxScaler normalisera les valeurs de données entre 0 et 2.

Dans le numéro de cellule [108] : Nous lisons d'abord tous les noms des colonnes pour une utilisation ultérieure pour afficher les résultats. Ensuite, nous appelons le fit_tranform à partir de l'objet créé min_max_Scalar et y avons passé le fichier CSV.

Dans le numéro de cellule [109] : On obtient les résultats normalisés qui sont compris entre 0 et 2.

Méthode 6 : Utilisation de la mise à l'échelle absolue maximale

Nous pouvons également normaliser les données à l'aide de pandas. Ces fonctionnalités sont également très appréciées pour normaliser les données. La mise à l'échelle absolue maximale normalise les valeurs entre 0 et 1. Nous appliquons ici .max() et .abs() comme indiqué ci-dessous :

Dans le numéro de cellule [110] : Nous importons la bibliothèque des pandas.

Dans le numéro de cellule [111] : Nous avons créé un cadre de données factice et imprimé ce cadre de données.

Dans le numéro de cellule [113] : Nous appelons chaque colonne, puis divisons les valeurs de colonne avec .max() et .abs().

Dans la cellule numéro [114] : Nous imprimons le résultat, et à partir du résultat, nous confirmons que nos données se normalisent entre 0 et 1.

Méthode 7 : Utilisation de la méthode du score z

La méthode suivante dont nous allons discuter est la méthode du score z. Cette méthode convertit les informations en distribution. Cette méthode calcule la moyenne de chaque colonne, puis soustrait de chaque colonne et, enfin, la divise par l'écart type. Cela normalise les données entre -1 et 1.

Dans le numéro de cellule [115] : Nous avons créé un cadre de données factice et imprimé ce cadre de données.

Dans le numéro de cellule [117] : Nous calculons la moyenne de la colonne et la soustrayons de la colonne. Ensuite, nous divisons la valeur de la colonne avec l'écart type.

Dans le numéro de cellule [118] : Nous imprimons les données normalisées entre -1 et 1.

Conclusion : Nous avons vu différents types de méthodes normalisées. Parmi eux, sklearn est très célèbre en raison de la prise en charge de l'apprentissage automatique. Mais cela dépend des exigences de l'utilisateur. Parfois, la fonctionnalité des pandas pour normaliser les données est suffisante. Nous ne pouvons pas dire qu'il n'y a que des méthodes de normalisation ci-dessus. Il existe de nombreuses méthodes pour normaliser les données qui dépendent également de votre type de données comme des images, des chiffres, du texte, etc. Nous nous concentrons sur ces données numériques et Python.