File tree Expand file tree Collapse file tree 2 files changed +7
-33
lines changed Expand file tree Collapse file tree 2 files changed +7
-33
lines changed Original file line number Diff line number Diff line change @@ -505,38 +505,6 @@ cdef class PeriodEngine(Int64Engine):
505505 def _call_monotonic (self , values ):
506506 return super (PeriodEngine, self )._call_monotonic(values.view(' i8' ))
507507
508- cdef _maybe_get_bool_indexer(self , object val):
509- cdef:
510- ndarray[uint8_t, cast= True ] indexer
511- ndarray[int64_t] values
512- int count = 0
513- Py_ssize_t i, n
514- int last_true
515-
516- if not util.is_integer_object(val):
517- raise KeyError (val)
518-
519- values = self ._get_index_values().view(' i8' )
520- n = len (values)
521-
522- result = np.empty(n, dtype = bool )
523- indexer = result.view(np.uint8)
524-
525- for i in range (n):
526- if values[i] == val:
527- count += 1
528- indexer[i] = 1
529- last_true = i
530- else :
531- indexer[i] = 0
532-
533- if count == 0 :
534- raise KeyError (val)
535- if count == 1 :
536- return last_true
537-
538- return result
539-
540508 def get_indexer (self , values ):
541509 cdef ndarray[int64_t, ndim= 1 ] ordinals
542510
@@ -568,6 +536,9 @@ cdef class PeriodEngine(Int64Engine):
568536
569537 return super (PeriodEngine, self ).get_indexer_non_unique(ordinal_array)
570538
539+ cdef _get_index_values_for_bool_indexer(self ):
540+ return self ._get_index_values().view(' i8' )
541+
571542
572543cpdef convert_scalar(ndarray arr, object value):
573544 # we don't turn integers
Original file line number Diff line number Diff line change @@ -66,7 +66,7 @@ cdef class {{name}}Engine(IndexEngine):
6666 raise KeyError(val)
6767 {{endif}}
6868
69- values = self._get_index_values ()
69+ values = self._get_index_values_for_bool_indexer ()
7070 n = len(values)
7171
7272 result = np.empty(n, dtype=bool)
@@ -86,6 +86,9 @@ cdef class {{name}}Engine(IndexEngine):
8686 return last_true
8787
8888 return result
89+
90+ cdef _get_index_values_for_bool_indexer(self):
91+ return self._get_index_values()
8992 {{endif}}
9093
9194{{endfor}}
You can’t perform that action at this time.
0 commit comments