File tree Expand file tree Collapse file tree 1 file changed +7
-4
lines changed
Expand file tree Collapse file tree 1 file changed +7
-4
lines changed Original file line number Diff line number Diff line change @@ -3058,16 +3058,19 @@ def renamer(x, suffix: str | None):
30583058 llabels = left ._transform_index (lrenamer )
30593059 rlabels = right ._transform_index (rrenamer )
30603060
3061- dups = []
3061+ dups = set ()
30623062 if not llabels .is_unique :
30633063 # Only warn when duplicates are caused because of suffixes, already duplicated
30643064 # columns in origin should not warn
3065- dups = llabels [(llabels .duplicated ()) & (~ left .duplicated ())]. tolist ( )
3065+ dups . update ( llabels [(llabels .duplicated ()) & (~ left .duplicated ())])
30663066 if not rlabels .is_unique :
3067- dups .extend (rlabels [(rlabels .duplicated ()) & (~ right .duplicated ())].tolist ())
3067+ dups .update (rlabels [(rlabels .duplicated ()) & (~ right .duplicated ())])
3068+ # Suffix addition creates duplicate to pre-existing column name
3069+ dups .update (llabels .intersection (right .difference (to_rename )))
3070+ dups .update (rlabels .intersection (left .difference (to_rename )))
30683071 if dups :
30693072 raise MergeError (
3070- f"Passing 'suffixes' which cause duplicate columns { set ( dups ) } is "
3073+ f"Passing 'suffixes' which cause duplicate columns { dups } is "
30713074 f"not allowed." ,
30723075 )
30733076
You can’t perform that action at this time.
0 commit comments