diff --git a/pandera/backends/pandas/array.py b/pandera/backends/pandas/array.py index de7b10750..b913ad00c 100644 --- a/pandera/backends/pandas/array.py +++ b/pandera/backends/pandas/array.py @@ -329,11 +329,13 @@ def set_default(self, check_obj, schema): if is_field(check_obj) and not isinstance( check_obj.dtype, pd.SparseDtype ): - check_obj.fillna(schema.default, inplace=True) + check_obj = check_obj.fillna(schema.default) elif not is_field(check_obj) and not isinstance( check_obj[schema.name].dtype, pd.SparseDtype ): - check_obj[schema.name].fillna(schema.default, inplace=True) + check_obj[schema.name] = check_obj[schema.name].fillna( + schema.default + ) return check_obj