@@ -610,22 +610,38 @@ def test_astype_categoricaldtype(self):
610
610
def test_astype_categorical_to_categorical (
611
611
self , name , dtype_ordered , series_ordered
612
612
):
613
+
614
+ def check_deprecation_warning (series ):
615
+ ''' Helper function to check DeprecationWarning for ordered = True conversions'''
616
+ msg = "The 'category' dtype is being set to ordered=False by default."
617
+ with tm .assert_produces_warning (DeprecationWarning , match = msg ):
618
+ result = series .astype ("category" )
619
+ assert result .dtype .ordered is False
620
+
613
621
# GH#10696, GH#18593
614
622
s_data = list ("abcaacbab" )
615
623
s_dtype = CategoricalDtype (list ("bac" ), ordered = series_ordered )
616
624
ser = Series (s_data , dtype = s_dtype , name = name )
617
-
625
+
626
+ # GH#61074
627
+ if series_ordered is True :
628
+ check_deprecation_warning (ser )
629
+ s_dtype = CategoricalDtype (list ("bac" ), ordered = False )
630
+ ser = Series (s_data , dtype = s_dtype , name = name )
631
+
632
+ # GH#61074
618
633
# unspecified categories
619
- dtype = CategoricalDtype (ordered = dtype_ordered )
620
- result = ser .astype (dtype )
621
- exp_dtype = CategoricalDtype (s_dtype .categories , dtype_ordered )
634
+ dtype = CategoricalDtype (ordered = False )
635
+ result = ser .astype (dtype )
636
+ exp_dtype = CategoricalDtype (s_dtype .categories , ordered = False )
622
637
expected = Series (s_data , name = name , dtype = exp_dtype )
623
638
tm .assert_series_equal (result , expected )
624
639
640
+ # GH#61074
625
641
# different categories
626
- dtype = CategoricalDtype (list ("adc" ), dtype_ordered )
642
+ dtype = CategoricalDtype (list ("adc" ), False )
627
643
result = ser .astype (dtype )
628
- expected = Series (s_data , name = name , dtype = dtype )
644
+ expected = Series (s_data , name = name , dtype = dtype )
629
645
tm .assert_series_equal (result , expected )
630
646
631
647
if dtype_ordered is False :
0 commit comments