diff --git a/stubs/sklearn/_typing.pyi b/stubs/sklearn/_typing.pyi index 33a33acb..0ff1251c 100644 --- a/stubs/sklearn/_typing.pyi +++ b/stubs/sklearn/_typing.pyi @@ -5,8 +5,10 @@ import io import typing_extensions from decimal import Decimal as Decimal +from typing import Any import numpy as np +import numpy.typing as npt import pandas as pd from numpy.typing import ArrayLike as ArrayLike from scipy.sparse import spmatrix @@ -15,7 +17,8 @@ from .base import BaseEstimator, ClassifierMixin, RegressorMixin PythonScalar: typing_extensions.TypeAlias = str | int | float | bool -MatrixLike: typing_extensions.TypeAlias = np.ndarray | pd.DataFrame | spmatrix +NDArray: typing_extensions.TypeAlias = npt.NDArray[Any] +MatrixLike: typing_extensions.TypeAlias = NDArray | pd.DataFrame | spmatrix FileLike = io.IOBase PathLike = str Int: typing_extensions.TypeAlias = int | np.int8 | np.int16 | np.int32 | np.int64 diff --git a/stubs/sklearn/linear_model/_base.pyi b/stubs/sklearn/linear_model/_base.pyi index 08ede4c0..d4029172 100644 --- a/stubs/sklearn/linear_model/_base.pyi +++ b/stubs/sklearn/linear_model/_base.pyi @@ -2,10 +2,9 @@ from abc import ABCMeta, abstractmethod from typing import ClassVar from typing_extensions import Self -from numpy import ndarray from numpy.random.mtrand import RandomState -from .._typing import ArrayLike, Int, MatrixLike +from .._typing import ArrayLike, Int, MatrixLike, NDArray from ..base import BaseEstimator as BaseEstimator, ClassifierMixin, MultiOutputMixin, RegressorMixin from ..utils._seq_dataset import ArrayDataset64, CSRDataset64 from ._stochastic_gradient import SGDClassifier @@ -22,23 +21,23 @@ def make_dataset( class LinearModel(BaseEstimator, metaclass=ABCMeta): @abstractmethod def fit(self, X, y): ... - def predict(self, X: MatrixLike) -> ndarray: ... + def predict(self, X: MatrixLike) -> NDArray: ... class LinearClassifierMixin(ClassifierMixin): - def decision_function(self, X: MatrixLike | ArrayLike) -> ndarray: ... - def predict(self, X: MatrixLike | ArrayLike) -> ndarray: ... + def decision_function(self, X: MatrixLike | ArrayLike) -> NDArray: ... + def predict(self, X: MatrixLike | ArrayLike) -> NDArray: ... class SparseCoefMixin: def densify(self) -> Self: ... def sparsify(self) -> SGDClassifier | Self: ... class LinearRegression(MultiOutputMixin, RegressorMixin, LinearModel): - feature_names_in_: ndarray = ... + feature_names_in_: NDArray = ... n_features_in_: int = ... - intercept_: float | ndarray = ... - singular_: ndarray = ... + intercept_: float | NDArray = ... + singular_: NDArray = ... rank_: int = ... - coef_: ndarray = ... + coef_: NDArray = ... _parameter_constraints: ClassVar[dict] = ...