File tree Expand file tree Collapse file tree 1 file changed +0
-20
lines changed Expand file tree Collapse file tree 1 file changed +0
-20
lines changed Original file line number Diff line number Diff line change @@ -1302,27 +1302,7 @@ def factorize(
13021302 # GH#57517
13031303 uniques = self [:0 ]
13041304 else :
1305- # GH#62337: preserve extension dtypes by reconstructing from original
1306- # First create the MultiIndex using the standard constructor
13071305 uniques = self ._constructor (uniques )
1308-
1309- # Then replace levels to preserve extension dtypes
1310- if len (uniques ) > 0 and isinstance (uniques , ABCMultiIndex ):
1311- new_levels = []
1312- # After isinstance check, we know uniques has levels attribute
1313- for i , (level , orig_level ) in enumerate ( # pyright: ignore[reportGeneralTypeIssues]
1314- zip (uniques .levels , self .levels , strict = False )
1315- ):
1316- try :
1317- # Try to cast to original extension dtype
1318- new_level = level .astype (orig_level .dtype )
1319- new_levels .append (new_level )
1320- except (TypeError , ValueError ):
1321- # If casting fails, keep the inferred level
1322- new_levels .append (level )
1323-
1324- # Reconstruct MultiIndex with preserved dtypes only
1325- uniques = uniques .set_levels (new_levels )
13261306 else :
13271307 from pandas import Index
13281308
You can’t perform that action at this time.
0 commit comments