diff --git a/pandas/_typing.py b/pandas/_typing.py index 431c3e8e24d26..07ae70e51edf8 100644 --- a/pandas/_typing.py +++ b/pandas/_typing.py @@ -31,5 +31,9 @@ # Type for index and columns of DataFrame Axes = Iterable[Union[ABCIndexClass, Iterable[str]]] + +# Type for data of DataFrame +Data = TypeVar("Data", ABCDataFrame, dict, np.ndarray) + FrameOrSeries = TypeVar("FrameOrSeries", ABCSeries, ABCDataFrame) Scalar = Union[str, int, float] diff --git a/pandas/core/frame.py b/pandas/core/frame.py index 4ffb617138f45..6836a5637dc92 100644 --- a/pandas/core/frame.py +++ b/pandas/core/frame.py @@ -80,7 +80,7 @@ ) from pandas.core.dtypes.missing import isna, notna -from pandas._typing import Axes, Dtype +from pandas._typing import Axes, Data, Dtype from pandas.core import algorithms, common as com, nanops, ops from pandas.core.accessor import CachedAccessor from pandas.core.arrays import Categorical, ExtensionArray @@ -391,7 +391,7 @@ def _constructor_expanddim(self): # Constructors def __init__(self, - data=None, + data: Optional[Data] = None, index: Optional[Axes] = None, columns: Optional[Axes] = None, dtype: Optional[Dtype] = None,