我有两个数据帧,并且试图比较两个数据帧,因此如果df1的值在df中,则删除该行。我列出了这两列,它们的名称完全相同。
因此,在下面的代码中,我将列重命名为另一个数据框(df3),以便可以将它们合并为新的数据框(df1)。我试图将索引设置为许可值,但不希望删除索引(因为我想保留许可号),然后进行比较。
df Permit Number Sub Permit
BLD-00045 NaN
ELE-2019 BLD-00045
PLM-2018 BLD-00045
df1 Permit Number Sub Permit
BLD-00001 NaN
ELE-2019 BLD-00045
PLM-7777 BLD-00045
所以我的目标是保留BLD-00045和PLM-7777行,但删除ELE-2019行,因为它在两个数据帧之间相等。
df3.rename(columns={'permit_num': "Permit Number"}, inplace=True)
df1 = pd.merge(df, df3, on='Permit Number')
df.set_index('Permit Number', inplace=False)
df1.set_index('Permit Number', inplace=False)
df = df.loc[df['Permit Number'] != df1['Permit Number']]
print(df)
我不断收到ValueError:只能比较标记相同的Series对象。