@@ -1030,7 +1030,6 @@ def _shallow_copy(
1030
1030
name = lib .no_default ,
1031
1031
levels = None ,
1032
1032
codes = None ,
1033
- dtype = None ,
1034
1033
sortorder = None ,
1035
1034
names = lib .no_default ,
1036
1035
_set_identity : bool = True ,
@@ -1041,7 +1040,7 @@ def _shallow_copy(
1041
1040
names = name if name is not lib .no_default else self .names
1042
1041
1043
1042
if values is not None :
1044
- assert levels is None and codes is None and dtype is None
1043
+ assert levels is None and codes is None
1045
1044
return MultiIndex .from_tuples (values , sortorder = sortorder , names = names )
1046
1045
1047
1046
levels = levels if levels is not None else self .levels
@@ -1050,7 +1049,6 @@ def _shallow_copy(
1050
1049
result = MultiIndex (
1051
1050
levels = levels ,
1052
1051
codes = codes ,
1053
- dtype = dtype ,
1054
1052
sortorder = sortorder ,
1055
1053
names = names ,
1056
1054
verify_integrity = False ,
@@ -1092,6 +1090,8 @@ def copy(
1092
1090
----------
1093
1091
names : sequence, optional
1094
1092
dtype : numpy dtype or pandas type, optional
1093
+
1094
+ .. deprecated:: 1.2.0
1095
1095
levels : sequence, optional
1096
1096
codes : sequence, optional
1097
1097
deep : bool, default False
@@ -1117,15 +1117,24 @@ def copy(
1117
1117
if codes is None :
1118
1118
codes = deepcopy (self .codes )
1119
1119
1120
- return self ._shallow_copy (
1120
+ new_index = self ._shallow_copy (
1121
1121
levels = levels ,
1122
1122
codes = codes ,
1123
1123
names = names ,
1124
- dtype = dtype ,
1125
1124
sortorder = self .sortorder ,
1126
1125
_set_identity = _set_identity ,
1127
1126
)
1128
1127
1128
+ if dtype :
1129
+ warnings .warn (
1130
+ "parameter dtype is deprecated and will be removed in a future version."
1131
+ " Use the astype method instead." ,
1132
+ FutureWarning ,
1133
+ stacklevel = 2 ,
1134
+ )
1135
+ new_index = new_index .astype (dtype )
1136
+ return new_index
1137
+
1129
1138
def __array__ (self , dtype = None ) -> np .ndarray :
1130
1139
""" the array interface, return my values """
1131
1140
return self .values
0 commit comments