Personnaliser les préférences

Nous utilisons des cookies pour vous aider à naviguer efficacement et à exécuter certaines fonctions. Vous trouverez ci-dessous des informations détaillées sur tous les cookies sous chaque catégorie de consentement.

Les cookies classés comme « Nécessaires » sont stockés sur votre navigateur car ils sont essentiels pour activer les fonctionnalités de base du site.... 

Toujours actif

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

Aucun cookie à afficher.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

Aucun cookie à afficher.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

Aucun cookie à afficher.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

Aucun cookie à afficher.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

Aucun cookie à afficher.

Comment centrer les données en Python : avec des exemples



Centrer un ensemble de données signifie soustraire la valeur moyenne de chaque observation individuelle dans l’ensemble de données.

Une fois que vous avez centré un ensemble de données, la valeur moyenne de l’ensemble de données devient nulle.

Les exemples suivants montrent comment centrer les données en Python.

Exemple 1 : centrer les valeurs d’un tableau NumPy

Supposons que nous ayons le tableau NumPy suivant :

import numpy as np

#create NumPy array
data = np.array([4, 6, 9, 13, 14, 17, 18, 19, 19, 21])

#display mean of array
print(data.mean())

14.0

Nous pouvons définir une fonction pour soustraire la valeur moyenne du tableau de chaque observation individuelle :

#create function to center data
center_function = lambda x: x - x.mean()

#apply function to original NumPy array
data_centered = center_function(data)

#view updated Array
print(data_centered)

array([-10.,  -8.,  -5.,  -1.,   0.,   3.,   4.,   5.,   5.,   7.])

Les valeurs résultantes sont les valeurs centrées de l’ensemble de données.

Puisque la moyenne du tableau d’origine était de 14, cette fonction a simplement soustrait 14 à chaque valeur individuelle du tableau d’origine.

Par exemple:

  • 1ère valeur du tableau centré = 4 – 14 = -10
  • 2ème valeur du tableau centré = 6 – 14 = -8
  • 3ème valeur dans le tableau centré = 9 – 14 = -5

Et ainsi de suite.

On peut également vérifier que la moyenne du tableau centré est nulle :

#display mean of centered array
print(data_centered.mean())

0.0

Exemple 2 : Centrer les colonnes d’un DataFrame Pandas

Supposons que nous ayons le DataFrame pandas suivant :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'x': [1, 4, 5, 6, 6, 8, 9],
                   'y': [7, 7, 8, 8, 8, 9, 12],
                   'z': [3, 3, 4, 4, 6, 7, 7]})

#view DataFrame
print(df)

   x   y  z
0  1   7  3
1  4   7  3
2  5   8  4
3  6   8  4
4  6   8  6
5  8   9  7
6  9  12  7

Nous pouvons utiliser la fonction pandas apply() pour centrer les valeurs de chaque colonne dans le DataFrame :

#center the values in each column of the DataFrame
df_centered = df.apply(lambda x: x-x.mean())

#view centered DataFrame
print(df_centered)

	        x	        y	        z
0	-4.571429	-1.428571	-1.857143
1	-1.571429	-1.428571	-1.857143
2	-0.571429	-0.428571	-0.857143
3	 0.428571	-0.428571	-0.857143
4	 0.428571	-0.428571	 1.142857
5	 2.428571	 0.571429	 2.142857
6	 3.428571	 3.571429	 2.142857 

On peut alors vérifier que la valeur moyenne de chaque colonne est nulle :

#display mean of each column in the DataFrame
df_centered.mean()

x    2.537653e-16
y   -2.537653e-16
z    3.806479e-16
dtype: float64

Les moyennes des colonnes sont affichées en notation scientifique, mais chaque valeur est essentiellement égale à zéro.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes en Python :

Comment calculer une moyenne tronquée en Python
Comment calculer l’erreur quadratique moyenne (MSE) en Python
Comment calculer la moyenne des colonnes sélectionnées dans Pandas

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *