Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -----------------------Funzione custom che controlla i duplicati in una lista-----------------------
- Se vuoi sapere quali siano i duplicati però puoi fare in diversi modi.
- Puoi fare un for-loop link: https://codefather.tech/blog/python-check-for-duplicates-in-list/
- # Un modo...
- for i, o in enumerate(lista):
- if o in lista[i+1:len(lista)]:
- print("Alla posizione", i, "l'elemento", o, "è un duplicato")
- # O se lo devi fare su tante liste puoi farlo usando una funzione:
- def controlla_duplicati(lista):
- for i, o in enumerate(lista):
- if o in lista[i+1:len(lista)]:
- print("Alla posizione", i, "l'elemento", o, "è un duplicato")
- list=["roma", "milano", "roma", "firenze", "pippo"]
- controlla_duplicati(list)
- # -----------------------Funzione custom che controlla i duplicati in una dataframe-----------------------
- un modo semplice per fare questo è usare la funzione apposita di pandas “duplicate”
- carichi la lista in un DataFrame pandas
- lista_con_duplicati = [1, 2, 2, 3, 4, 3, 2]
- df.columns = [["valori"]] # non necessario ma usato solo per rendere più leggibile il risultato
- df = pd.DataFrame(lista_con_duplicati)
- questo è il risultato del caricamento
- valori
- 0 1
- 1 2
- 2 2
- 3 3
- 4 4
- 5 3
- 6 2
- poi in questo modo ottieni tutti i valori non duplicati
- not_duplicate = df[df.duplicated()==False]
- print(not_duplicate)
- con questo ottieni
- valori
- 0 1
- 1 2
- 3 3
- 4 4
- in questo modo invece ottieni tutti i valori duplicati escluso il primo valore duplicato
- duplicate = df[df.duplicated(keep='first')]
- print(duplicate)
- con questo ottieni
- valori
- 2 2
- 5 3
- 6 2
- se invece vuoi vedere tutti i valori duplicati usi
- all_duplicate = df[df.duplicated(keep=False)]
- print(all_duplicate)
- e ottieni
- valori
- 1 2
- 2 2
- 3 3
- 5 3
- 6 2
Add Comment
Please, Sign In to add comment