@@ -144,3 +144,27 @@ def test_sort_index_multiindex(self):
144
144
# rows share same level='A': sort has no effect without remaining lvls
145
145
res = s .sort_index (level = 'A' , sort_remaining = False )
146
146
assert_series_equal (s , res )
147
+
148
+ def test_sort_index_kind (self ):
149
+ series = Series (index = [3 , 2 , 1 , 4 , 3 ])
150
+ expected_series = Series (index = [1 , 2 , 3 , 3 , 4 ])
151
+
152
+ index_sorted_series = series .sort_index (kind = 'mergesort' )
153
+ assert_series_equal (expected_series , index_sorted_series )
154
+
155
+ index_sorted_series = series .sort_index (kind = 'quicksort' )
156
+ assert_series_equal (expected_series , index_sorted_series )
157
+
158
+ index_sorted_series = series .sort_index (kind = 'heapsort' )
159
+ assert_series_equal (expected_series , index_sorted_series )
160
+
161
+ def test_sort_index_na_position (self ):
162
+ series = Series (index = [3 , 2 , 1 , 4 , 3 , np .nan ])
163
+
164
+ expected_series_first = Series (index = [np .nan , 1 , 2 , 3 , 3 , 4 ])
165
+ index_sorted_series = series .sort_index (na_position = 'first' )
166
+ assert_series_equal (expected_series_first , index_sorted_series )
167
+
168
+ expected_series_last = Series (index = [1 , 2 , 3 , 3 , 4 , np .nan ])
169
+ index_sorted_series = series .sort_index (na_position = 'last' )
170
+ assert_series_equal (expected_series_last , index_sorted_series )
0 commit comments