File tree Expand file tree Collapse file tree 2 files changed +6
-3
lines changed
Expand file tree Collapse file tree 2 files changed +6
-3
lines changed Original file line number Diff line number Diff line change @@ -3024,23 +3024,26 @@ def map_infer_mask(
30243024
30253025 ndarray result = np.empty(n, dtype = dtype)
30263026
3027+ flatiter arr_it = PyArray_IterNew(arr)
30273028 flatiter result_it = PyArray_IterNew(result)
30283029
30293030 for i in range(n ):
30303031 if mask[i]:
30313032 if na_value is no_default:
3032- val = arr[i]
3033+ val = PyArray_GETITEM( arr, PyArray_ITER_DATA(arr_it))
30333034 else :
30343035 val = na_value
30353036 else :
3036- val = arr[i]
3037+ val = PyArray_GETITEM( arr, PyArray_ITER_DATA(arr_it))
30373038 val = f(val)
30383039
30393040 if cnp.PyArray_IsZeroDim(val):
30403041 # unbox 0-dim arrays, GH#690
30413042 val = val.item()
30423043
30433044 PyArray_SETITEM(result, PyArray_ITER_DATA(result_it), val)
3045+
3046+ PyArray_ITER_NEXT(arr_it)
30443047 PyArray_ITER_NEXT(result_it)
30453048
30463049 if convert:
Original file line number Diff line number Diff line change @@ -1746,7 +1746,7 @@ def _build_map_infer_methods_params(arr: ArrayLike):
17461746 storage = None
17471747 if isinstance (arr .dtype , BaseMaskedDtype ):
17481748 arr = cast ("BaseMaskedArray" , arr )
1749- values = arr ._data
1749+ values = np . fromiter ( arr ._data , dtype = "O" )
17501750 if arr ._hasna :
17511751 na_value = arr .dtype .na_value
17521752
You can’t perform that action at this time.
0 commit comments