@@ -263,7 +263,7 @@ def _reconstruct_data(
263
263
return values
264
264
265
265
266
- def _ensure_arraylike (values ):
266
+ def _ensure_arraylike (values ) -> ArrayLike :
267
267
"""
268
268
ensure that we are arraylike if not already
269
269
"""
@@ -323,7 +323,7 @@ def get_data_algo(values: ArrayLike):
323
323
return htable , values
324
324
325
325
326
- def _check_object_for_strings (values ) -> str :
326
+ def _check_object_for_strings (values : np . ndarray ) -> str :
327
327
"""
328
328
Check if we can use string hashtable instead of object hashtable.
329
329
@@ -527,7 +527,11 @@ def f(c, v):
527
527
528
528
529
529
def factorize_array (
530
- values : np .ndarray , na_sentinel : int = - 1 , size_hint = None , na_value = None , mask = None
530
+ values : np .ndarray ,
531
+ na_sentinel : int = - 1 ,
532
+ size_hint : Optional [int ] = None ,
533
+ na_value = None ,
534
+ mask : Optional [np .ndarray ] = None ,
531
535
) -> Tuple [np .ndarray , np .ndarray ]:
532
536
"""
533
537
Factorize an array-like to codes and uniques.
@@ -982,13 +986,13 @@ def mode(values, dropna: bool = True) -> Series:
982
986
983
987
984
988
def rank (
985
- values ,
989
+ values : ArrayLike ,
986
990
axis : int = 0 ,
987
991
method : str = "average" ,
988
992
na_option : str = "keep" ,
989
993
ascending : bool = True ,
990
994
pct : bool = False ,
991
- ):
995
+ ) -> np . ndarray :
992
996
"""
993
997
Rank the values along a given axis.
994
998
@@ -1038,7 +1042,12 @@ def rank(
1038
1042
return ranks
1039
1043
1040
1044
1041
- def checked_add_with_arr (arr , b , arr_mask = None , b_mask = None ):
1045
+ def checked_add_with_arr (
1046
+ arr : np .ndarray ,
1047
+ b ,
1048
+ arr_mask : Optional [np .ndarray ] = None ,
1049
+ b_mask : Optional [np .ndarray ] = None ,
1050
+ ) -> np .ndarray :
1042
1051
"""
1043
1052
Perform array addition that checks for underflow and overflow.
1044
1053
@@ -1051,9 +1060,9 @@ def checked_add_with_arr(arr, b, arr_mask=None, b_mask=None):
1051
1060
----------
1052
1061
arr : array addend.
1053
1062
b : array or scalar addend.
1054
- arr_mask : boolean array or None
1063
+ arr_mask : np.ndarray[bool] or None, default None
1055
1064
array indicating which elements to exclude from checking
1056
- b_mask : boolean array or boolean or None
1065
+ b_mask : np.ndarray[bool] or None, default None
1057
1066
array or scalar indicating which element(s) to exclude from checking
1058
1067
1059
1068
Returns
@@ -1406,7 +1415,9 @@ def get_indexer(current_indexer, other_indexer):
1406
1415
1407
1416
1408
1417
def _view_wrapper (f , arr_dtype = None , out_dtype = None , fill_wrap = None ):
1409
- def wrapper (arr , indexer , out , fill_value = np .nan ):
1418
+ def wrapper (
1419
+ arr : np .ndarray , indexer : np .ndarray , out : np .ndarray , fill_value = np .nan
1420
+ ):
1410
1421
if arr_dtype is not None :
1411
1422
arr = arr .view (arr_dtype )
1412
1423
if out_dtype is not None :
@@ -1419,7 +1430,9 @@ def wrapper(arr, indexer, out, fill_value=np.nan):
1419
1430
1420
1431
1421
1432
def _convert_wrapper (f , conv_dtype ):
1422
- def wrapper (arr , indexer , out , fill_value = np .nan ):
1433
+ def wrapper (
1434
+ arr : np .ndarray , indexer : np .ndarray , out : np .ndarray , fill_value = np .nan
1435
+ ):
1423
1436
if conv_dtype == object :
1424
1437
# GH#39755 avoid casting dt64/td64 to integers
1425
1438
arr = ensure_wrapped_if_datetimelike (arr )
@@ -1429,7 +1442,9 @@ def wrapper(arr, indexer, out, fill_value=np.nan):
1429
1442
return wrapper
1430
1443
1431
1444
1432
- def _take_2d_multi_object (arr , indexer , out , fill_value , mask_info ):
1445
+ def _take_2d_multi_object (
1446
+ arr : np .ndarray , indexer : np .ndarray , out : np .ndarray , fill_value , mask_info
1447
+ ) -> None :
1433
1448
# this is not ideal, performance-wise, but it's better than raising
1434
1449
# an exception (best to optimize in Cython to avoid getting here)
1435
1450
row_idx , col_idx = indexer
@@ -1452,7 +1467,14 @@ def _take_2d_multi_object(arr, indexer, out, fill_value, mask_info):
1452
1467
out [i , j ] = arr [u_ , v ]
1453
1468
1454
1469
1455
- def _take_nd_object (arr , indexer , out , axis : int , fill_value , mask_info ):
1470
+ def _take_nd_object (
1471
+ arr : np .ndarray ,
1472
+ indexer : np .ndarray ,
1473
+ out : np .ndarray ,
1474
+ axis : int ,
1475
+ fill_value ,
1476
+ mask_info ,
1477
+ ):
1456
1478
if mask_info is not None :
1457
1479
mask , needs_masking = mask_info
1458
1480
else :
@@ -1570,7 +1592,7 @@ def _take_nd_object(arr, indexer, out, axis: int, fill_value, mask_info):
1570
1592
1571
1593
1572
1594
def _get_take_nd_function (
1573
- ndim : int , arr_dtype , out_dtype , axis : int = 0 , mask_info = None
1595
+ ndim : int , arr_dtype : np . dtype , out_dtype : np . dtype , axis : int = 0 , mask_info = None
1574
1596
):
1575
1597
if ndim <= 2 :
1576
1598
tup = (arr_dtype .name , out_dtype .name )
@@ -1605,7 +1627,9 @@ def func2(arr, indexer, out, fill_value=np.nan):
1605
1627
return func2
1606
1628
1607
1629
1608
- def take (arr , indices , axis : int = 0 , allow_fill : bool = False , fill_value = None ):
1630
+ def take (
1631
+ arr , indices : np .ndarray , axis : int = 0 , allow_fill : bool = False , fill_value = None
1632
+ ):
1609
1633
"""
1610
1634
Take elements from an array.
1611
1635
@@ -1739,7 +1763,7 @@ def take_nd(
1739
1763
arr ,
1740
1764
indexer ,
1741
1765
axis : int = 0 ,
1742
- out = None ,
1766
+ out : Optional [ np . ndarray ] = None ,
1743
1767
fill_value = lib .no_default ,
1744
1768
allow_fill : bool = True ,
1745
1769
):
0 commit comments