File tree Expand file tree Collapse file tree 3 files changed +37
-2
lines changed
Filter options
Expand file tree Collapse file tree 3 files changed +37
-2
lines changed
Original file line number Diff line number Diff line change @@ -9,6 +9,7 @@ from typing_extensions import deprecated
9
9
10
10
from numpy import (
11
11
_OrderKACF ,
12
+ _PartitionKind ,
12
13
_SortKind ,
13
14
amax ,
14
15
amin ,
@@ -26,6 +27,7 @@ from numpy._typing import (
26
27
NDArray ,
27
28
_ArrayLike ,
28
29
_DTypeLikeBool ,
30
+ _ArrayLikeInt ,
29
31
_ScalarLike_co ,
30
32
_Shape ,
31
33
_ShapeLike ,
@@ -665,8 +667,20 @@ class MaskedArray(ndarray[_ShapeType_co, _DType_co]):
665
667
) -> _ArrayT : ...
666
668
667
669
#
668
- def partition (self , * args , ** kwargs ): ...
669
- def argpartition (self , * args , ** kwargs ): ...
670
+ def partition (
671
+ self ,
672
+ kth : _ArrayLikeInt ,
673
+ axis : SupportsIndex = - 1 ,
674
+ kind : _PartitionKind = "introselect" ,
675
+ order : str | Sequence [str ] | None = None
676
+ ) -> None : ...
677
+ def argpartition (
678
+ self ,
679
+ kth : _ArrayLikeInt ,
680
+ axis : SupportsIndex = - 1 ,
681
+ kind : _PartitionKind = "introselect" ,
682
+ order : str | Sequence [str ] | None = None
683
+ ) -> _MaskedArray [intp ]: ...
670
684
def take (self , indices , axis = ..., out = ..., mode = ...): ...
671
685
672
686
copy : Any
Original file line number Diff line number Diff line change @@ -2,9 +2,12 @@ from typing import Any
2
2
3
3
import numpy as np
4
4
import numpy .ma
5
+ import numpy .typing as npt
5
6
6
7
m : np .ma .MaskedArray [tuple [int ], np .dtype [np .float64 ]]
7
8
9
+ AR_b : npt .NDArray [np .bool ]
10
+
8
11
m .shape = (3 , 1 ) # E: Incompatible types in assignment
9
12
m .dtype = np .bool # E: Incompatible types in assignment
10
13
@@ -68,3 +71,15 @@ m.sort(endwith='cabbage') # E: No overload variant
68
71
m .sort (fill_value = lambda : 'cabbage' ) # E: No overload variant
69
72
m .sort (stable = 'cabbage' ) # E: No overload variant
70
73
m .sort (stable = True ) # E: No overload variant
74
+
75
+ m .partition (['cabbage' ]) # E: No overload variant
76
+ m .partition (axis = (0 ,1 )) # E: No overload variant
77
+ m .partition (kind = 'cabbage' ) # E: No overload variant
78
+ m .partition (order = lambda : 'cabbage' ) # E: No overload variant
79
+ m .partition (AR_b ) # E: No overload variant
80
+
81
+ m .argpartition (['cabbage' ]) # E: No overload variant
82
+ m .argpartition (axis = (0 ,1 )) # E: No overload variant
83
+ m .argpartition (kind = 'cabbage' ) # E: No overload variant
84
+ m .argpartition (order = lambda : 'cabbage' ) # E: No overload variant
85
+ m .argpartition (AR_b ) # E: No overload variant
Original file line number Diff line number Diff line change @@ -128,3 +128,9 @@ assert_type(np.ma.sort(MAR_f4), MaskedNDArray[np.float32])
128
128
assert_type (np .ma .sort (MAR_subclass ), MaskedNDArraySubclass )
129
129
assert_type (np .ma .sort ([[0 , 1 ], [2 , 3 ]]), NDArray [Any ])
130
130
assert_type (np .ma .sort (AR_f4 ), NDArray [np .float32 ])
131
+
132
+ assert_type (MAR_f4 .partition (1 ), None )
133
+ assert_type (MAR_f4 .partition (1 , axis = 0 , kind = 'introselect' , order = 'K' ), None )
134
+
135
+ assert_type (MAR_f4 .argpartition (1 ), MaskedNDArray [np .intp ])
136
+ assert_type (MAR_1d .argpartition (1 , axis = 0 , kind = 'introselect' , order = 'K' ), MaskedNDArray [np .intp ])
You can’t perform that action at this time.
0 commit comments