import pandas as pd
numeric_columns = ["population", "income", "index"]
df[numeric_columns] = (
df[numeric_columns]
.replace({"*": pd.NA, "N/D": pd.NA, "": pd.NA})
.apply(pd.to_numeric, errors="coerce")
)21 Recipe: Convert Data Types
21.1 Task
Replace special missing markers and convert selected columns to numeric values.
21.2 Validation
print(df[numeric_columns].dtypes)
print(df[numeric_columns].isna().sum())21.3 Things to remember
errors="coerce" converts invalid values to missing values. Always inspect how many values were converted.