Skip to content

Commit f760bcb

Browse files
committed
add all arrays
1 parent 001a320 commit f760bcb

File tree

13 files changed

+151
-19
lines changed

13 files changed

+151
-19
lines changed

pandas-stubs/_libs/arrays.pyi

Lines changed: 38 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,38 @@
1-
class NDArrayBacked: ...
1+
from collections.abc import Sequence
2+
from typing import Any
3+
4+
import numpy as np
5+
from typing_extensions import Self
6+
7+
from pandas._typing import (
8+
AnyArrayLikeInt,
9+
AxisInt,
10+
DtypeObj,
11+
Shape,
12+
)
13+
14+
class NDArrayBacked:
15+
_dtype: DtypeObj
16+
_ndarray: np.ndarray
17+
def __setstate__(self, state: Any) -> None: ...
18+
def __len__(self) -> int: ...
19+
@property
20+
def shape(self) -> Shape: ...
21+
@property
22+
def ndim(self) -> int: ...
23+
@property
24+
def size(self) -> int: ...
25+
@property
26+
def nbytes(self) -> int: ...
27+
def copy(self, order=...) -> Self: ...
28+
def delete(self, loc, axis=...) -> Self: ...
29+
def swapaxes(self, axis1, axis2) -> Self: ...
30+
def repeat(
31+
self,
32+
repeats: int | Sequence[int] | AnyArrayLikeInt,
33+
axis: AxisInt | None = None,
34+
) -> Self: ...
35+
def reshape(self, *args: Any, **kwargs: Any) -> Self: ...
36+
def ravel(self, order=...) -> Self: ...
37+
@property
38+
def T(self) -> Self: ...
Lines changed: 41 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,43 @@
1+
from pandas.core.arrays.arrow import ArrowExtensionArray
12
from pandas.core.arrays.base import (
2-
ExtensionArray as ExtensionArray,
3-
ExtensionOpsMixin as ExtensionOpsMixin,
4-
ExtensionScalarOpsMixin as ExtensionScalarOpsMixin,
3+
ExtensionArray,
4+
ExtensionOpsMixin,
5+
ExtensionScalarOpsMixin,
56
)
6-
from pandas.core.arrays.boolean import BooleanArray as BooleanArray
7-
from pandas.core.arrays.categorical import Categorical as Categorical
8-
from pandas.core.arrays.datetimes import DatetimeArray as DatetimeArray
9-
from pandas.core.arrays.integer import IntegerArray as IntegerArray
10-
from pandas.core.arrays.interval import IntervalArray as IntervalArray
11-
from pandas.core.arrays.numpy_ import PandasArray as PandasArray
12-
from pandas.core.arrays.period import PeriodArray as PeriodArray
13-
from pandas.core.arrays.sparse import SparseArray as SparseArray
14-
from pandas.core.arrays.string_ import StringArray as StringArray
15-
from pandas.core.arrays.timedeltas import TimedeltaArray as TimedeltaArray
7+
from pandas.core.arrays.boolean import BooleanArray
8+
from pandas.core.arrays.categorical import Categorical
9+
from pandas.core.arrays.datetimes import DatetimeArray
10+
from pandas.core.arrays.floating import FloatingArray
11+
from pandas.core.arrays.integer import IntegerArray
12+
from pandas.core.arrays.interval import IntervalArray
13+
from pandas.core.arrays.masked import BaseMaskedArray
14+
from pandas.core.arrays.numpy_ import NumpyExtensionArray
15+
from pandas.core.arrays.period import (
16+
PeriodArray,
17+
period_array,
18+
)
19+
from pandas.core.arrays.sparse import SparseArray
20+
from pandas.core.arrays.string_ import StringArray
21+
from pandas.core.arrays.string_arrow import ArrowStringArray
22+
from pandas.core.arrays.timedeltas import TimedeltaArray
23+
24+
__all__ = [
25+
"ArrowExtensionArray",
26+
"ArrowStringArray",
27+
"BaseMaskedArray",
28+
"BooleanArray",
29+
"Categorical",
30+
"DatetimeArray",
31+
"ExtensionArray",
32+
"ExtensionOpsMixin",
33+
"ExtensionScalarOpsMixin",
34+
"FloatingArray",
35+
"IntegerArray",
36+
"IntervalArray",
37+
"NumpyExtensionArray",
38+
"PeriodArray",
39+
"SparseArray",
40+
"StringArray",
41+
"TimedeltaArray",
42+
"period_array",
43+
]
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
class ArrowStringArrayMixin: ...
Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,15 @@
11
from pandas.core.arrays.base import ExtensionArray
2+
from pandas.core.series import Series
3+
from typing_extensions import Self
24

35
from pandas._libs.arrays import NDArrayBacked
6+
from pandas._typing import (
7+
AxisInt,
8+
Scalar,
9+
)
410

5-
class NDArrayBackedExtensionArray(NDArrayBacked, ExtensionArray): ...
11+
class NDArrayBackedExtensionArray(NDArrayBacked, ExtensionArray):
12+
def argmin(self, axis: AxisInt = 0, skipna: bool = True) -> int: ...
13+
def argmax(self, axis: AxisInt = 0, skipna: bool = True) -> int: ...
14+
def insert(self, loc: int, item: Scalar) -> Self: ...
15+
def value_counts(self, dropna: bool = True) -> Series[int]: ...
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from pandas.core.arrays.arrow.accessors import (
2+
ListAccessor,
3+
StructAccessor,
4+
)
5+
from pandas.core.arrays.arrow.array import ArrowExtensionArray
6+
7+
__all__ = ["ArrowExtensionArray", "ListAccessor", "StructAccessor"]
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
from abc import ABCMeta
2+
3+
class ArrowAccessor(metaclass=ABCMeta): ...
4+
class ListAccessor(ArrowAccessor): ...
5+
class StructAccessor(ArrowAccessor): ...
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from pandas.core.arraylike import OpsMixin
2+
from pandas.core.arrays._arrow_string_mixins import ArrowStringArrayMixin
3+
from pandas.core.arrays.base import ExtensionArraySupportsAnyAll
4+
5+
class ArrowExtensionArray(
6+
OpsMixin, ExtensionArraySupportsAnyAll, ArrowStringArrayMixin
7+
): ...

pandas-stubs/core/arrays/base.pyi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ class ExtensionArray:
8585
) -> np.intp: ...
8686
def factorize(self, use_na_sentinel: bool = True) -> tuple[np_1darray, Self]: ...
8787
def repeat(
88-
self, repeats: int | AnyArrayLikeInt | Sequence[int], axis: None = None
88+
self, repeats: int | Sequence[int] | AnyArrayLikeInt, axis: None = None
8989
) -> Self: ...
9090
def take(
9191
self,
@@ -112,6 +112,8 @@ class ExtensionArray:
112112
**kwargs: Any,
113113
) -> Self: ...
114114

115+
class ExtensionArraySupportsAnyAll(ExtensionArray): ...
116+
115117
class ExtensionOpsMixin:
116118
@classmethod
117119
def _add_arithmetic_ops(cls) -> None: ...
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,8 @@
1-
from pandas.core.arrays.numeric import NumericDtype
1+
from pandas.core.arrays.numeric import (
2+
NumericArray,
3+
NumericDtype,
4+
)
25

36
class Float32Dtype(NumericDtype): ...
47
class Float64Dtype(NumericDtype): ...
8+
class FloatingArray(NumericArray): ...
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
from pandas.core.arrays.masked import BaseMaskedArray
2+
3+
from pandas._libs.properties import cache_readonly
4+
15
from pandas.core.dtypes.dtypes import BaseMaskedDtype
26

37
class NumericDtype(BaseMaskedDtype): ...
8+
9+
class NumericArray(BaseMaskedArray):
10+
@cache_readonly
11+
def dtype(self) -> NumericDtype: ...

0 commit comments

Comments
 (0)