Hoe nan-waarden te vervangen door nul in panda's
U kunt de volgende methoden gebruiken om NaN-waarden te vervangen door nullen in een pandas DataFrame:
Methode 1: Vervang NaN-waarden door nul in een kolom
df[' col1 '] = df[' col1 ']. fillna (0)
Methode 2: Vervang NaN-waarden door nul in meerdere kolommen
df[[' col1 ', ' col2 ']] = df[[' col1 ', ' col2 ']]. fillna (0)
Methode 3: Vervang NaN-waarden door nul in alle kolommen
df = df. fillna (0)
De volgende voorbeelden laten zien hoe u elk van deze methoden kunt gebruiken met de volgende panda’s DataFrame:
import pandas as pd
import numpy as np
#createDataFrame
df = pd. DataFrame ({' points ': [25, np.nan, 15, 14, 19, 23, 25, 29],
' assists ': [5, np.nan, 7, np.nan, 12, 9, 9, 4],
' rebounds ': [11, 8, 10, 6, 6, np.nan, 9, np.nan]})
#view DataFrame
print (df)
points assists rebounds
0 25.0 5.0 11.0
1 NaN NaN 8.0
2 15.0 7.0 10.0
3 14.0 NaN 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN
Methode 1: Vervang NaN-waarden door nul in een kolom
De volgende code laat zien hoe u NaN-waarden alleen door nul kunt vervangen in de kolom „helpt“:
#replace NaN values with zero in 'assists' column
df[' assists '] = df[' assists ']. fillna (0)
#view updated DataFrame
print (df)
points assists rebounds
0 25.0 5.0 11.0
1 NaN 0.0 8.0
2 15.0 7.0 10.0
3 14.0 0.0 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN
Merk op dat de NaN-waarden in de kolom „assisten“ zijn vervangen door nullen, maar dat de NaN-waarden in elke andere kolom nog steeds bestaan.
Methode 2: Vervang NaN-waarden door nul in meerdere kolommen
De volgende code laat zien hoe u de NaN-waarden vervangt door nul in de kolommen “punten” en “helpt”:
#replace NaN values with zero in 'points' and 'assists' column
df[[' points ', ' assists ']] = df[[' points ', ' assists ']]. fillna (0)
#view updated DataFrame
print (df)
points assists rebounds
0 25.0 5.0 11.0
1 0.0 0.0 8.0
2 15.0 7.0 10.0
3 14.0 0.0 6.0
4 19.0 12.0 6.0
5 23.0 9.0 NaN
6 25.0 9.0 9.0
7 29.0 4.0 NaN
Methode 3: Vervang NaN-waarden door nul in alle kolommen
De volgende code laat zien hoe u NaN-waarden vervangt door nul in elke kolom van het DataFrame:
#replace NaN values with zero in all columns
df = df. fillna (0)
#view updated DataFrame
print (df)
points assists rebounds
0 25.0 5.0 11.0
1 0.0 0.0 8.0
2 15.0 7.0 10.0
3 14.0 0.0 6.0
4 19.0 12.0 6.0
5 23.0 9.0 0.0
6 25.0 9.0 9.0
7 29.0 4.0 0.0
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:
Hoe specifieke waarden in Panda’s te vervangen
Hoe u een Pandas DataFrame filtert op kolomwaarden
Hoe NA-waarden voor meerdere kolommen in Panda’s te vullen