Python Pandas - Fill missing columns values (NaN) with constant values



Use the fillna() method and set a constant value in it for all the missing values using the parameter value. At first, let us import the required libraries with their respective aliases −

import pandas as pd
import numpy as np

Create a DataFrame with 2 columns. We have set the NaN values using the Numpy np.NaN

dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang'],"Units": [100, 150, np.NaN, 80, np.NaN, np.NaN]
   }
)

Placing a constant value for the column values with NaN i.e. for Units columns here −

constVal = 200

Replace NaNs with the constant value i.e. 200 −

dataFrame['Units'].fillna(value=constVal, inplace=True)

Example

Following is the code −

import pandas as pd
import numpy as np

# Create DataFrame
dataFrame = pd.DataFrame(
   {
      "Car": ['BMW', 'Lexus', 'Lexus', 'Mustang', 'Bentley', 'Mustang'],"Units": [100, 150, np.NaN, 80, np.NaN, np.NaN]
   }
)

print"DataFrame ...\n",dataFrame

# placing a constant value for the column values with NaN i.e, for Units columns here
constVal = 200

# Replace NaNs with the constant value i.e 200
dataFrame['Units'].fillna(value=constVal, inplace=True)
print"\nUpdated Dataframe after filling NaN values with constant values...\n",dataFrame

Output

This will produce the following output −

DataFrame ...
       Car   Units
0      BMW   100.0
1    Lexus   150.0
2    Lexus     NaN
3  Mustang    80.0
4  Bentley     NaN
5  Mustang     NaN

Updated Dataframe after filling NaN values with constant values...
       Car   Units
0      BMW   100.0
1    Lexus   150.0
2    Lexus   200.0
3  Mustang    80.0
4  Bentley   200.0
5  Mustang   200.0

Advertisements