Панды / Python, если заявление для df.duplicated - PullRequest
0 голосов
/ 17 октября 2019

имеют простой код, который находит дублирующиеся строки и распечатывает их, если таковые имеются. Он прекрасно работает без оператора IF, поэтому он всегда печатает:

duplicated rows in the sheet : 
 Empty DataFrame
Columns: [IP,MAC,DNS,TEST,TEST2]
Index: [] 

Я хотел бы добавить оператор IF, чтобы распечатать результаты, только если найдены дублированные значения. В противном случае выведите «no duplicates»

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')

1 Ответ

0 голосов
/ 17 октября 2019

DataFrame имеет дублированный метод, который вы можете использовать для получения дублирующихся строк, как показано ниже

df = pd.DataFrame(np.random.choice(3, (10,3)), columns = "A B C".split())
duplicated = df[df.duplicated()]
if len(duplicated):
    print(duplicated)
else:
    print("no duplicates")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...