From fce2d11cf66a027227a41779640b427257a27402 Mon Sep 17 00:00:00 2001 From: LarWong Date: Sun, 11 Apr 2021 16:51:18 -0400 Subject: [PATCH] TYP: Added fillna() overloads to generic.py #40727 --- pandas/core/generic.py | 349 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 349 insertions(+) diff --git a/pandas/core/generic.py b/pandas/core/generic.py index 729a3ee1f038c..bbd3fe69a2e90 100644 --- a/pandas/core/generic.py +++ b/pandas/core/generic.py @@ -47,6 +47,7 @@ Manager, NpDtype, Renamer, + Scalar, StorageOptions, T, TimedeltaConvertibleTypes, @@ -6269,6 +6270,354 @@ def convert_dtypes( # ---------------------------------------------------------------------- # Filling NA's + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None = ..., + method: str | None = ..., + axis: Axis | None = ..., + inplace: Literal[False] = ..., + limit: int | None = ..., + downcast: dict | str | None = ..., + ) -> FrameOrSeries | None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + axis: Axis | None, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + *, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + axis: Axis | None, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + axis: Axis | None, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + *, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + *, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + axis: Axis | None, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + *, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + *, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + *, + inplace: Literal[True], + limit: int | None, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + *, + downcast: dict | str | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None, + method: str | None, + axis: Axis | None, + inplace: Literal[True], + limit: int | None, + ) -> None: + ... + + @overload + def fillna( + self: FrameOrSeries, + value: Scalar | dict | Series | DataFrame | None = ..., + method: str | None = ..., + axis: Axis | None = ..., + inplace: bool_t = ..., + limit: int | None = ..., + downcast: dict | str | None = ..., + ) -> FrameOrSeries | None: + ... + @doc(**_shared_doc_kwargs) def fillna( self: FrameOrSeries,