pandat

Kuinka pudottaa päällekkäisiä rivejä Pandas Pythoniin

Kuinka pudottaa päällekkäisiä rivejä Pandas Pythoniin
Python on yksi suosituimmista ohjelmointikielistä tietojen analysointiin ja tukee myös erilaisia ​​Python-tietokeskeisiä paketteja. Pandas-paketit ovat suosituimpia Python-paketteja, ja ne voidaan tuoda tietojen analysointia varten. Lähes kaikissa tietojoukoissa on usein kaksoisrivejä, jotka voivat aiheuttaa ongelmia tietojen analysoinnin tai aritmeettisen toiminnan aikana. Paras tapa analysoida tietoja on tunnistaa päällekkäiset rivit ja poistaa ne tietojoukostasi. Pandas drop_duplicates () -toiminnon avulla voit helposti pudottaa tai poistaa kopioita tietuekehyksestä.
Tässä artikkelissa kerrotaan, kuinka löytää kaksoiskappaleet tiedoista ja poistaa kaksoiskappaleet Pandas Python -toimintojen avulla.

Tässä artikkelissa olemme ottaneet tietojoukon Yhdysvaltojen eri osavaltioiden väestöstä, joka on saatavana a .csv-tiedostomuoto. Luemme .csv-tiedosto näyttääksesi tiedoston alkuperäisen sisällön seuraavasti:

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
tulosta (df_state)

Seuraavassa kuvakaappauksessa näet tämän tiedoston päällekkäisen sisällön:

Kopioiden tunnistaminen Pandas Pythonissa

On selvitettävä, onko käyttämilläsi tiedoilla päällekkäisiä rivejä. Voit tarkistaa tietojen päällekkäisyydet käyttämällä mitä tahansa seuraavissa osissa mainittua menetelmää.

Menetelmä 1:

Lue csv-tiedosto ja välitä se datakehykseen. Tunnista sitten kaksoisrivit käyttämällä kopioitu () toiminto. Käytä lopuksi tulostuslauseketta kaksoisrivien näyttämiseen.

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
Dup_Rows = df_state [df_state.kopioitu ()]
tulosta ("\ n \ nKaksoisrivit: \ n ".muoto (Dup_Rows))

Menetelmä 2:

Tätä menetelmää käyttämällä is_duplicated -sarake lisätään taulukon loppuun ja merkitään 'True', jos kyseessä on päällekkäinen rivi.

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
df_state ["is_duplicate"] = df_state.kopioitu ()
tulosta ("\ n ".muoto (df_state))

Kopioiden pudottaminen Pandas Pythoniin

Päällekkäiset rivit voidaan poistaa datakehyksestä seuraavan syntaksin avulla:
drop_duplicates (osajoukko = ", keep =", inplace = väärä)
Edellä olevat kolme parametria ovat valinnaisia, ja ne selitetään yksityiskohtaisemmin alla:
pitää: tällä parametrilla on kolme erilaista arvoa: First, Last ja False. Ensimmäinen arvo pitää ensimmäisen esiintymän ja poistaa seuraavat kaksoiskappaleet, Viimeinen arvo pitää vain viimeisen esiintymän ja poistaa kaikki aiemmat kaksoiskappaleet, ja Väärä-arvo poistaa kaikki päällekkäiset rivit.
osajoukko: tunniste, jota käytetään kaksoiskappaleiden tunnistamiseen
paikallaan: sisältää kaksi ehtoa: tosi ja väärä. Tämä parametri poistaa päällekkäiset rivit, jos se on asetettu True.

Poista kaksoiskappaleet säilyttäen vain ensimmäisen esiintymisen

Kun valitset “keep = first”, vain ensimmäinen rivi esiintyy ja kaikki muut kaksoiskappaleet poistetaan.

Esimerkki

Tässä esimerkissä vain ensimmäinen rivi säilytetään ja loput kaksoiskappaleet poistetaan:

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
Dup_Rows = df_state [df_state.kopioitu ()]
tulosta ("\ n \ nKaksoisrivit: \ n ".muoto (Dup_Rows))
DF_RM_DUP = df_state.drop_duplicates (pidä = 'ensimmäinen')
tulosta ('\ n \ nTulos DataFrame kaksoiskappaleen poiston jälkeen: \ n', DF_RM_DUP.pää (n = 5))

Seuraavassa kuvakaappauksessa säilytetty ensimmäisen rivin esiintymä on korostettu punaisella ja loput kopiot poistetaan:

Poista kopiot säilyttämällä vain viimeinen esiintymä

Kun valitset “keep = last”, kaikki kaksoisrivit viimeistä esiintymää lukuun ottamatta poistetaan.

Esimerkki

Seuraavassa esimerkissä kaikki päällekkäiset rivit poistetaan paitsi viimeinen esiintymä.

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
Dup_Rows = df_state [df_state.kopioitu ()]
tulosta ("\ n \ nKaksoisrivit: \ n ".muoto (Dup_Rows))
DF_RM_DUP = df_state.drop_duplicates (keep = 'viimeinen')
tulosta ('\ n \ nTulos DataFrame kaksoiskappaleen poiston jälkeen: \ n', DF_RM_DUP.pää (n = 5))

Seuraavassa kuvassa kaksoiskappaleet poistetaan ja vain viimeinen rivi esiintyy:

Poista kaikki kaksoiskappaleet

Jos haluat poistaa kaikki kaksoisrivit taulusta, aseta ”keep = False” seuraavasti:

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
Dup_Rows = df_state [df_state.kopioitu ()]
tulosta ("\ n \ nKaksoisrivit: \ n ".muoto (Dup_Rows))
DF_RM_DUP = df_state.drop_duplicates (pidä = väärä)
tulosta ('\ n \ nTulos DataFrame kaksoiskappaleen poiston jälkeen: \ n', DF_RM_DUP.pää (n = 5))

Kuten seuraavasta kuvasta näet, kaikki kaksoiskappaleet poistetaan datakehyksestä:

Poista liittyvät kaksoiskappaleet määritetystä sarakkeesta

Oletusarvoisesti toiminto tarkistaa kaikki kaksoisrivit tietyn kehyksen kaikista sarakkeista. Mutta voit myös määrittää sarakkeen nimen käyttämällä osajoukko-parametria.

Esimerkki

Seuraavassa esimerkissä kaikki siihen liittyvät kaksoiskappaleet poistetaan valtiot-sarakkeesta.

tuoda pandoja pd: nä
df_state = pd.read_csv ("C: / Käyttäjät / DELL / Työpöytä / väestö_ds.csv ")
Dup_Rows = df_state [df_state.kopioitu ()]
tulosta ("\ n \ nKaksoisrivit: \ n ".muoto (Dup_Rows))
DF_RM_DUP = df_state.drop_duplicates (osajoukko = 'tila')
tulosta ('\ n \ nTulos DataFrame kaksoiskappaleen poiston jälkeen: \ n', DF_RM_DUP.pää (n = 6))

Johtopäätös

Tässä artikkelissa kerrotaan, kuinka päällekkäiset rivit poistetaan datakehyksestä drop_duplicates () Pandas Pythonissa. Tämän toiminnon avulla voit myös tyhjentää tietosi päällekkäisyydestä tai redundanssista. Artikkeli osoitti myös, kuinka tunnistaa mahdolliset kaksoiskappaleet tietokehyksessäsi.

Best Linux Distros for Gaming in 2021
The Linux operating system has come a long way from its original, simple, server-based look. This OS has immensely improved in recent years and has no...
Kuinka siepata ja suoratoistaa pelisessiosi Linuxissa
Aikaisemmin pelaamista pidettiin vain harrastuksena, mutta ajan myötä pelialalla tapahtui valtava kasvu tekniikan ja pelaajien määrän suhteen. Peliala...
Parhaat pelit, joita voi seurata käsien seurannalla
Oculus Quest esitteli äskettäin loistavan ajatuksen seurannasta ilman ohjaimia. Yhä kasvavan määrän pelejä ja aktiviteetteja, jotka tukevat tukea joko...