Pandas - df.compare() 如何更改自身/其他标签?

A C*_*nge 4 python pandas

在 Pandas 中使用df.compare,是否可以从输出中更改 self/other 的标签?

我需要将此输出直接发送给不太懂技术的用户,并希望将其更改为更具描述性的标签。

我的代码:

  if df_1.equals(df_2):
    return None
  else:
    return df_1.compare(df_2, align_axis=0)
Run Code Online (Sandbox Code Playgroud)

ALo*_*llz 5

您可以将rename索引级别设置为更明显的内容:

df1 = pd.DataFrame([[1,2,3,4], [1,2,3,4]])
df2 = pd.DataFrame([[1,2,5,4], [5,2,3,1]])

df1.compare(df2, align_axis=0).rename(index={'self': 'left', 'other': 'right'}, level=-1)

           0    2    3
0 left   NaN  3.0  NaN
  right  NaN  5.0  NaN
1 left   1.0  NaN  4.0
  right  5.0  NaN  1.0
Run Code Online (Sandbox Code Playgroud)