Normaliser une liste de nombres en Python
- La formule de normalisation
-
Normaliser une liste de nombres à l’aide de la fonction
MinMaxScaler
en Pythonsklearn
- Normaliser une liste de nombres manuellement en Python
La normalisation consiste à convertir une donnée donnée dans une autre échelle. Nous redimensionnons les données de manière à ce qu’elles se situent entre deux valeurs. La plupart du temps, les données sont remises à l’échelle entre 0 et 1. Nous remettons à l’échelle les données dans un but différent. Par exemple, les algorithmes d’apprentissage automatique fonctionnent mieux lorsque les valeurs de l’ensemble de données sont petites.
Disons que nous avons une liste {1,2,3} et après la normalisation de l’échelle de 0 et 1, la liste sera {0, 0.5, 1}
. Nous pouvons également normaliser nos données à une autre échelle. Disons entre 2 et 6. Donc, encore une fois, si nous avons la liste {1,2,3} après normalisation, ce sera {2,4,6}.
La formule de normalisation
Comprendre comment fonctionne la normalisation. Nous verrons sa formule. Nous soustrayons la valeur minimale de chaque nombre et la divisons par la gamme c’est-à-dire : max-min. Ainsi, en sortie, nous obtenons la valeur normalisée de ce nombre spécifique.
Nous pouvons utiliser deux méthodes pour normaliser une liste. Soit nous pouvons utiliser la fonction intégrée, qui est disponible dans le module de prétraitement du package sklearn
. Ou nous pouvons faire notre logique pour cela qui fonctionne sur la même formule que celle décrite ci-dessus.
Normaliser une liste de nombres à l’aide de la fonction MinMaxScaler
en Python sklearn
Une méthode intégrée nommée MinMaxScaler()
est disponible dans le module preprocessing
du package sklearn
. Nous allons créer un tableau 1D NumPy
et le passer à la fonction. Nous devons avoir les packages NumPy
et sklearn
installés pour utiliser cette fonction.
Exemple de code :
# python 3.x
import numpy as np
from sklearn import preprocessing
list = np.array([6, 1, 0, 2, 7, 3, 8, 1, 5]).reshape(-1, 1)
print("Original List:", list)
scaler = preprocessing.MinMaxScaler()
normalizedlist = scaler.fit_transform(list)
print("Normalized List:", normalizedlist)
Production :
Original List: [[6]
[1]
[0]
[2]
[7]
[3]
[8]
[1]
[5]]
Normalized List: [[0.75 ]
[0.125]
[0. ]
[0.25 ]
[0.875]
[0.375]
[1. ]
[0.125]
[0.625]]
Supposons maintenant que nous voulions spécifier notre plage de normalisation. Pour cela, nous préciserons notre range
dans MinMaxScaler()
. Par défaut, si nous ne spécifions pas la plage, ce sera 0 et 1. Mais nous pouvons définir notre plage de mise à l’échelle. Dans cet exemple, nous spécifions la plage 0 et 3.
Exemple de code :
# python 3.x
import numpy as np
from sklearn import preprocessing
list = np.array([6, 1, 0, 2, 7, 3, 8, 1, 5]).reshape(-1, 1)
print("Original List:", list)
scaler = preprocessing.MinMaxScaler(feature_range=(0, 3))
normalizedlist = scaler.fit_transform(list)
print("Normalized List:", normalizedlist)
Production :
Original List: [[6]
[1]
[0]
[2]
[7]
[3]
[8]
[1]
[5]]
Normalized List: [[2.25 ]
[0.375]
[0. ]
[0.75 ]
[2.625]
[1.125]
[3. ]
[0.375]
[1.875]]
Normaliser une liste de nombres manuellement en Python
Nous pouvons également normaliser manuellement la liste des nombres en écrivant le code complet correspondant, qui fonctionne sur la même formule que celle décrite ci-dessus pour la normalisation.
Exemple de code :
list = [6, 1, 0, 2, 7, 3, 8, 1, 5]
print("Original List:", list)
xmin = min(list)
xmax = max(list)
for i, x in enumerate(list):
list[i] = (x - xmin) / (xmax - xmin)
print("Normalized List:", list)
Production :
Original List: [6, 1, 0, 2, 7, 3, 8, 1, 5]
Normalized List: [0.75, 0.125, 0.0, 0.25, 0.875, 0.375, 1.0, 0.125, 0.625]
I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.
LinkedInArticle connexe - Python List
- Convertir un dictionnaire en liste en Python
- Supprimer toutes les occurrences d'un élément d'une liste en Python
- Supprimer les doublons de la liste en Python
- Comment obtenir la moyenne d'une liste en Python
- Quelle est la différence entre les méthodes de liste append et extend
- Comment convertir une liste en chaîne de caractères en Python