File tree Expand file tree Collapse file tree 1 file changed +11
-9
lines changed Expand file tree Collapse file tree 1 file changed +11
-9
lines changed Original file line number Diff line number Diff line change @@ -371,6 +371,10 @@ def _call_cython_op(
371
371
372
372
is_datetimelike = dtype .kind in "mM"
373
373
374
+ if self .how in ["any" , "all" ]:
375
+ if mask is None :
376
+ mask = isna (values )
377
+
374
378
if is_datetimelike :
375
379
values = values .view ("int64" )
376
380
is_numeric = True
@@ -379,25 +383,23 @@ def _call_cython_op(
379
383
if values .dtype == "float16" :
380
384
values = values .astype (np .float32 )
381
385
382
- values = values .T
383
- if mask is not None :
384
- mask = mask .T
385
- if result_mask is not None :
386
- result_mask = result_mask .T
387
-
388
386
if self .how in ["any" , "all" ]:
389
- if mask is None :
390
- mask = isna (values )
391
387
if dtype == object :
392
388
if kwargs ["skipna" ]:
393
389
# GH#37501: don't raise on pd.NA when skipna=True
394
- if mask .any ():
390
+ if mask is not None and mask .any ():
395
391
# mask on original values computed separately
396
392
values = values .copy ()
397
393
values [mask ] = True
398
394
values = values .astype (bool , copy = False ).view (np .int8 )
399
395
is_numeric = True
400
396
397
+ values = values .T
398
+ if mask is not None :
399
+ mask = mask .T
400
+ if result_mask is not None :
401
+ result_mask = result_mask .T
402
+
401
403
out_shape = self ._get_output_shape (ngroups , values )
402
404
func = self ._get_cython_function (self .kind , self .how , values .dtype , is_numeric )
403
405
values = self ._get_cython_vals (values )
You can’t perform that action at this time.
0 commit comments