如何在python中显示DF中一列中存在重复值的所有行

如何在python中显示DF中一列中存在重复值的所有行,python,pandas,dataframe,Python,Pandas,Dataframe,我有两个数据帧,我正试图根据一列df['Number and postcode']合并它们。但是,该列有许多重复的值,因此合并不起作用。如果出现以下错误:检查重复项。另一个问题是df1['Number and postcode']也可能有许多重复的值。请问我怎样才能解决这个问题 这是我使用的公式: merged = pd.merge(df, df1[{'TOTAL_FLOOR_AREA', 'Bedrooms'}],how = 'inner', on = df['Number and postc

我有两个数据帧,我正试图根据一列df['Number and postcode']合并它们。但是,该列有许多重复的值,因此合并不起作用。如果出现以下错误:检查重复项。另一个问题是df1['Number and postcode']也可能有许多重复的值。请问我怎样才能解决这个问题

这是我使用的公式:

merged = pd.merge(df, df1[{'TOTAL_FLOOR_AREA', 'Bedrooms'}],how = 'inner', on = df['Number and postcode'])

要查看数据帧中哪些行是重复的,只需使用Pandas内置函数duplicated

随后,您可以在合并前使用以下方法删除两个数据帧中的所有重复项:

df.drop_duplicates(subset='Number and postcode', inplace=True)
df1.drop_duplicates(subset='Number and postcode', inplace=True)

要删除在一列中包含重复项的行,如果只是df['Number and postcode']。drop_duplicatesinplace=True?是的,您也可以使用它。不过,我通常更喜欢将列传递给subset参数。谢谢。所以我做了这两个函数:df.drop\u duplicateSubset='Number and postcode',keep='last',inplace=True df1.drop\u duplicateSubset='Number and postcode',keep='last',inplace=True,然后运行merged=pd.mergedf,df1[{'TOTAL\u FLOOR\u AREA',beddrooms',how='internal',on=df['Number and postcode']我仍然会得到和你一样的错误before@KurranTailor您需要将merge语句修改为merged=pd.mergedf,df1,on='Number and postcode',how='inner'
df.drop_duplicates(subset='Number and postcode', inplace=True)
df1.drop_duplicates(subset='Number and postcode', inplace=True)