@@ -147,6 +147,11 @@ def setup(self, dtype):
147
147
self .idx = getattr (tm , 'make{}Index' .format (dtype ))(N )
148
148
self .array_mask = (np .arange (N ) % 3 ) == 0
149
149
self .series_mask = Series (self .array_mask )
150
+ self .sorted = self .idx .sort_values ()
151
+ half = N // 2
152
+ self .non_unique = self .idx [:half ].append (self .idx [:half ])
153
+ self .non_unique_sorted = self .sorted [:half ].append (self .sorted [:half ])
154
+ self .key = self .sorted [N // 4 ]
150
155
151
156
def time_boolean_array (self , dtype ):
152
157
self .idx [self .array_mask ]
@@ -163,6 +168,18 @@ def time_slice(self, dtype):
163
168
def time_slice_step (self , dtype ):
164
169
self .idx [::2 ]
165
170
171
+ def time_get_loc (self , dtype ):
172
+ self .idx .get_loc (self .key )
173
+
174
+ def time_get_loc_sorted (self , dtype ):
175
+ self .sorted .get_loc (self .key )
176
+
177
+ def time_get_loc_non_unique (self , dtype ):
178
+ self .non_unique .get_loc (self .key )
179
+
180
+ def time_get_loc_non_unique_sorted (self , dtype ):
181
+ self .non_unique_sorted .get_loc (self .key )
182
+
166
183
167
184
class Float64IndexMethod (object ):
168
185
# GH 13166
0 commit comments