Maison >développement back-end >Tutoriel Python >Comment remplacer les valeurs NaN dans un DataFrame pandas par des moyennes de colonnes ?
Remplacer les valeurs NaN dans un DataFrame pandas par des moyennes de colonnes
Remplir les valeurs NaN dans un DataFrame pandas avec la moyenne des colonnes correspondantes est une tâche courante dans l'analyse des données. Alors que numpy offre une approche simple pour les tableaux, les Pandas DataFrames nécessitent une solution sur mesure.
Approche :
Pour remplacer les valeurs NaN dans un DataFrame par des moyennes de colonnes, nous pouvons utiliser la méthode DataFrame.fillna :
<code class="python">df.fillna(df.mean())</code>
Exemple :
Considérons un DataFrame avec des valeurs NaN :
<code class="python">import pandas as pd df = pd.DataFrame({ 'A': [-0.166919, -0.297953, -0.120211, np.nan, np.nan, -0.788073, -0.916080, -0.887858, 1.948430, 0.019698], 'B': [0.979728, -0.912674, -0.540679, -2.027325, np.nan, np.nan, -0.612343, 1.033826, 1.025011, -0.795876], 'C': [-0.632955, -1.365463, -0.680481, 1.533582, 0.461821, np.nan, np.nan, np.nan, -2.982224, -0.046431] })</code>
Calcul de la moyenne de chacun colonne :
<code class="python">column_averages = df.mean()</code>
Et enfin, en remplaçant les valeurs NaN :
<code class="python">df_filled = df.fillna(column_averages)</code>
Résultat :
<code class="python">print(df_filled) A B C 0 -0.166919 0.979728 -0.632955 1 -0.297953 -0.912674 -1.365463 2 -0.120211 -0.540679 -0.680481 3 -0.151121 -2.027325 1.533582 4 -0.151121 -0.231291 0.461821 5 -0.788073 -0.231291 -0.530307 6 -0.916080 -0.612343 -0.530307 7 -0.887858 1.033826 -0.530307 8 1.948430 1.025011 -2.982224 9 0.019698 -0.795876 -0.046431</code>
Comme on le voit dans la sortie , les valeurs NaN sont remplacées avec succès par la moyenne de leurs colonnes respectives.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!