df.duplicated的Pandas/Python,if语句
有一个简单的代码,可以找到重复的行并打印出来(如果有)。 它在没有IF语句的情况下工作正常,因此总是打印:df.duplicated的Pandas/Python,if语句,python,pandas,Python,Pandas,有一个简单的代码,可以找到重复的行并打印出来(如果有)。 它在没有IF语句的情况下工作正常,因此总是打印: duplicated rows in the sheet : Empty DataFrame Columns: [IP,MAC,DNS,TEST,TEST2] Index: [] 我想添加一个IF语句,仅当找到重复的值时才打印结果。 否则,打印“无副本” DataFrame有一个复制的方法,您可以使用它来获得重复的行,如下所示 df=pd.DataFrame(np.random.c
duplicated rows in the sheet :
Empty DataFrame
Columns: [IP,MAC,DNS,TEST,TEST2]
Index: []
我想添加一个IF语句,仅当找到重复的值时才打印结果。
否则,打印“无副本”
DataFrame有一个复制的方法,您可以使用它来获得重复的行,如下所示
df=pd.DataFrame(np.random.choice(3,(10,3)),columns=“abc”.split())
duplicated=df[df.duplicated()]
如果为len(重复):
打印(副本)
其他:
打印(“无副本”)
提示:检查df.duplicated()
的结果。请注意,您是如何测试它是否为精确的布尔值True
,但希望相同的方法在下一行中返回其他值的:
import pandas as pd
df = pd.DataFrame(values,columns=['IP','MAC','DNS','TEST','TEST2'])
print('\n you are working on this data: \n',df)
if df.duplicated()==True:
duplicatedRows = df[df.duplicated()]
print('\n duplicated rows in the sheet : \n',duplicatedRows)
x= input('\n Please type "y" to continue or "x" exit\n').lower()
else:
print ('no duplicates')