Hvordan du slipper dupliserte rader i pandas python

Hvordan du slipper dupliserte rader i pandas python
Python er et av de mest populære programmeringsspråkene for dataanalyse og støtter også forskjellige Python-datasentriske pakker. Pandas -pakkene er noen av de mest populære Python -pakkene og kan importeres for dataanalyse. I nesten alle datasett eksisterer dupliserte rader ofte, noe som kan forårsake problemer under dataanalyse eller aritmetisk drift. Den beste tilnærmingen for dataanalyse er å identifisere dupliserte rader og fjerne dem fra datasettet. Ved hjelp av Pandas drop_duplicates () -funksjonen kan du enkelt slippe eller fjerne duplikatposter fra en dataramme.
Denne artikkelen viser deg hvordan du finner duplikater i data og fjerner duplikatene ved å bruke Pandas Python -funksjonene.

I denne artikkelen har vi tatt et datasett av befolkningen i forskjellige stater i USA, som er tilgjengelig i en .CSV -filformat. Vi vil lese .CSV -fil for å vise det originale innholdet i denne filen, som følger:

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
print (df_state)

I det følgende skjermbildet kan du se duplikatinnholdet i denne filen:

Identifisere duplikater i Pandas Python

Det er nødvendig å avgjøre om dataene du bruker har duplisert rader. For å sjekke om duplisering av data, kan du bruke hvilken som helst av metodene som dekkes i følgende seksjoner.

Metode 1:

Les CSV -filen og send den inn i datarammen. Identifiser deretter duplikatradene ved å bruke duplisert () funksjon. Til slutt, bruk utskriftserklæringen for å vise duplikatrappene.

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
Dup_rows = df_state [df_state.duplisert ()]
print ("\ n \ nduplicate rows: \ n ".Format (dup_rows)))

Metode 2:

Ved hjelp av denne metoden, is_duplisert Kolonnen vil bli lagt til slutten av tabellen og merket som 'sann' i tilfelle dupliserte rader.

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
df_state ["is_duplicate"] = df_state.duplisert ()
print ("\ n ".Format (df_state)))

Slipper duplikater i Pandas Python

Dupliserte rader kan fjernes fra datarammen din ved å bruke følgende syntaks:
drop_duplicates (subset = ", keep =", inplace = falsk)
Ovennevnte tre parametere er valgfrie og forklares mer detaljert nedenfor:
beholde: Denne parameteren har tre forskjellige verdier: første, sist og falsk. Den første verdien holder den første forekomsten og fjerner påfølgende duplikater, den siste verdien holder bare den siste forekomsten og fjerner alle tidligere duplikater, og den falske verdien fjerner alle dupliserte rader.
delett: Etikett som brukes til å identifisere de dupliserte radene
på plass: Inneholder to betingelser: sant og usant. Denne parameteren vil fjerne dupliserte rader hvis den er satt til sann.

Fjern duplikater som bare holder den første forekomsten

Når du bruker "Keep = First", vil bare forekomsten av første rad bli holdt, og alle andre duplikater vil bli fjernet.

Eksempel

I dette eksemplet vil bare den første raden bli holdt, og de gjenværende duplikatene vil bli slettet:

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
Dup_rows = df_state [df_state.duplisert ()]
print ("\ n \ nduplicate rows: \ n ".Format (dup_rows)))
Df_rm_dup = df_state.drop_duplicates (keep = 'first')
skriv ut ('\ n \ nresult dataaframe etter duplikat fjerning: \ n', df_rm_dup.hode (n = 5))

I det følgende skjermbildet blir den beholdte forekomsten av første rad fremhevet i rødt og de gjenværende duplikasjonene fjernes:

Fjern duplikater som bare holder den siste forekomsten

Når du bruker "Keep = Last", vil alle dupliserte rader bortsett fra at den siste forekomsten blir fjernet.

Eksempel

I det følgende eksemplet fjernes alle dupliserte rader bortsett fra bare den siste forekomsten.

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
Dup_rows = df_state [df_state.duplisert ()]
print ("\ n \ nduplicate rows: \ n ".Format (dup_rows)))
Df_rm_dup = df_state.drop_duplicates (keep = 'sist')
skriv ut ('\ n \ nresult dataaframe etter duplikat fjerning: \ n', df_rm_dup.hode (n = 5))

I det følgende bildet fjernes duplikatene og bare den siste radforekomsten oppbevares:

Fjern alle dupliserte rader

For å fjerne alle dupliserte rader fra en tabell, sett "Keep = False", som følger:

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
Dup_rows = df_state [df_state.duplisert ()]
print ("\ n \ nduplicate rows: \ n ".Format (dup_rows)))
Df_rm_dup = df_state.drop_duplicates (hold = usant)
skriv ut ('\ n \ nresult dataaframe etter duplikat fjerning: \ n', df_rm_dup.hode (n = 5))

Som du kan se i følgende bilde, fjernes alle duplikater fra datarammen:

Fjern relaterte duplikater fra en spesifisert kolonne

Som standard sjekker funksjonen for alle dupliserte rader fra alle kolonnene i den gitte datarammen. Men du kan også spesifisere kolonnenavnet ved å bruke delmengde -parameteren.

Eksempel

I det følgende eksemplet fjernes alle relaterte duplikater fra kolonnen 'States'.

Importer pandaer som PD
df_state = pd.read_csv ("c:/brukere/dell/desktop/population_ds.CSV ")
Dup_rows = df_state [df_state.duplisert ()]
print ("\ n \ nduplicate rows: \ n ".Format (dup_rows)))
Df_rm_dup = df_state.drop_duplicates (subset = 'tilstand')
skriv ut ('\ n \ nresult dataaframe etter duplikat fjerning: \ n', df_rm_dup.hode (n = 6))

Konklusjon

Denne artikkelen viste deg hvordan du fjerner dupliserte rader fra en dataramme ved hjelp av drop_duplicates () funksjon i pandas python. Du kan også fjerne dataene om duplisering eller redundans ved hjelp av denne funksjonen. Artikkelen viste deg også hvordan du kan identifisere duplikater i datarammen din.