Pandák cseppindex oszlopa: Példákkal magyarázva

A Pandas egy széles körben használt Python-könyvtár adatkezelésre és -elemzésre. Az egyik alapvető funkció, amelyet a pandák nyújthatnak Önnek, az adatkészlet szerkezetének módosítása. Pontosabban, az indexek eldobása egy DataFrame-ben kulcsfontosságú művelet az adatkészletekkel való munka során. Lehetővé teszi a nem kívánt sorok vagy oszlopok eltávolítását az adatokból.

Ha pandákkal szeretne indexet dobni, használhatja a .drop() és a .reset_index() metódusokat. A .drop() metódus lehetővé teszi bizonyos sorok vagy oszlopok eltávolítását. Másrészt a .reset_index() metódus lehetővé teszi az index eltávolítását és az alapértelmezett RangeIndex visszaállítását.

Pandák cseppindex oszlopa: Példákkal magyarázva

Ebben a cikkben megvitatjuk ezen módszerek használatát az indexek eldobására a panda DataFrame-ekben. Különféle példákon keresztül bemutatjuk, hogyan lehet hatékonyan manipulálni egy adatkészlet szerkezetét, hogy megfeleljen a különböző elemzési igényeknek. Ezeken a példákon keresztül mélyebben megértheti, hogyan használható a panda-könyvtár adatkezelésre.

Menjünk bele!

Tartalomjegyzék

A Panda Drop Index megértése

Mielőtt belemerülnénk a pandák indexelésének kérdésébe, nagyon fontos, hogy megértse, mi az a panda DataFrame. Ezenkívül ismernie kell az indexek és oszlopok fogalmát a pandas DataFrame-ben.

Pandák cseppindex oszlopa: Példákkal magyarázva

Ebben a részben a panda DataFrame alapjait, az indexet és az oszlopokat ismertetjük. Ezután megnézünk egy példát egy index eldobására pandák használatával.

1. Mi az a Pandas Dataframe?

A Pandas egy nyílt forráskódú Python-könyvtár, amely nagy teljesítményű adatkezelési és -elemző eszközöket biztosít. Egyik kulcsfontosságú adatstruktúrája a DataFrame .

A pandas DataFrame egy kétdimenziós adatstruktúra címkézett tengelyekkel (sorokkal és oszlopokkal). A DataFrame egy SQL-tábla vagy egy Excel-táblázat Pythonic objektum-reprezentációjaként is elképzelhető.

A következő egy tipikus panda DataFrame:

Pandák cseppindex oszlopa: Példákkal magyarázva

2. Mik azok az indexek és az oszlopok?

A pandas DataFrame-ben az Index az adatpontok „címeként” szolgál. Eszközt biztosít az adatok eléréséhez és rendszerezéséhez a DataFrame-en keresztül. Ez lehet a pandák által hozzárendelt alapértelmezett egész számok sorozata, vagy egy felhasználó által meghatározott egyéni index.

Az oszlopok azok a változók, amelyek különböző típusú adatokat tárolnak a DataFrame-ben. Minden oszlop lényegében egy adatsor. Különféle adattípusokat tartalmazhat, például egész számokat, lebegőpontokat vagy karakterláncokat. Az oszlop címkéje, amelyet általában oszlopnévnek neveznek, azonosítja ezt az adatsort.

A pandas DataFrame-ben az adatkezelés gyakran magában foglalja a sorcímkékkel (indexekkel) vagy oszlopcímkékkel való munkát.

A többindexes DataFrame-mel végrehajtható néhány gyakori művelet közé tartozik a sorok vagy oszlopok kijelölése, átnevezése és eldobása a címkéik alapján.

3. Hogyan lehet eldobni az indexoszlopot pandákkal

A pandákban a DataFrame reset_index() metódussal eldobhatja és visszaállíthatja az indexet.

Tegyük fel, hogy a következő DataFrame-ünk van:

Pandák cseppindex oszlopa: Példákkal magyarázva

Az index oszlop eldobásához a következő kódot használhatjuk:

df.reset_index(drop=True)

A kód futtatása után az alábbi példa jelenik meg:

Pandák cseppindex oszlopa: Példákkal magyarázva

A kimenetben láthatja, hogy az indexet eldobták, és az eredeti indexértékekkel helyettesítették.

A pandákban a drop módszert is használhatja a megadott címkék eltávolítására a sorokból vagy oszlopokból.

Ennek a módszernek a szintaxisa:

DataFrame.drop(labels=None, *, axis=0, index=None, columns=None, level=None, inplace=False, errors='raise')

A drop módszer legfontosabb paraméterei a következők :

  • címkék : Az eltávolítandó címkék. A tengelyparamétertől függően sorok vagy oszlopok is lehetnek .

  • tengely : Meghatározza, hogy sorokból ( 0 vagy 'index' ) vagy oszlopokból ( 1 vagy 'oszlopok' ) kerüljön-e le.

  • index : Alternatíva az axis=0 megadására . Lehetővé teszi az eltávolítandó sorcímkék jelzését.

  • oszlopok : Alternatíva az axis=1 megadására . Lehetővé teszi az oszlopcímkék eltávolítását.

  • inplace : Ha True értékre van állítva , a művelet a helyén kerül végrehajtásra, ami azt jelenti, hogy az eredeti DataFrame módosul. Ha False (alapértelmezett), akkor a rendszer egy új DataFrame-et küld vissza a megadott címkékkel.

  • errors : A hiányzó címkék kezelését szabályozza. Ha 'raise' (alapértelmezett), akkor hibaüzenet jelenik meg, ha nem található címkék. Ha „kényszerít” , a hiányzó címkéket a rendszer csendben figyelmen kívül hagyja.

Tegyük fel, hogy a következő DataFrame-ünk van:

Pandák cseppindex oszlopa: Példákkal magyarázva

Az 1-es indexű sort szeretnénk eldobni. Ehhez a drop metódussal a következő kódot írhatjuk, kezdve az import pandákkal:

import pandas as pd

# Drop row with index 1
df.drop(1, axis=0)

A drop tengely=0 argumentuma közli az értelmezővel, hogy soronkénti műveletet hajtunk végre. A második argumentum 1 a sorindex. Azt mondja az értelmezőnek, hogy hagyja el az 1-es indexű sort.

A fenti művelet után a következő DataFrame-et kapjuk:

Pandák cseppindex oszlopa: Példákkal magyarázva

Tegyük fel, hogy el akarjuk dobni a DataFrame-ünkből azt az oszlopot, amelynek oszlopfejléce az Életkor. Ennek eléréséhez a következő kódot írhatjuk:

# Drop column 'Age'
df.drop('Age', axis=1)

Az axis=1 argumentum közli az értelmezővel, hogy oszloponkénti műveletet hajtunk végre. Az „Age” argumentum arra utasítja a tolmácsot, hogy dobja el az „Age” nevű oszlopot .

A fenti kód futtatása után a következő DataFrame-et kapja:

Pandák cseppindex oszlopa: Példákkal magyarázva

Több sor és oszlop eldobása

A fenti példa egyetlen sor vagy oszlop eldobását mutatja be. Mi a teendő, ha több sort vagy oszlopot szeretne eldobni?

Ennek eléréséhez ugyanazt a kódot fogjuk használni, némi változtatással. Egyetlen érték használata helyett számos argumentumot is megadhatunk a drop függvénynek, hogy egyszerre több sort és oszlopot távolítsunk el.

Tegyük fel, hogy el akarom dobni az első 2 sort a DataFrame-ben. Ennek eléréséhez a következő kódot használhatjuk:

# Dropping first 2 rows by index
df = df.drop([0, 1], axis=0)

Ebben a kódban azt mondjuk az értelmezőnek, hogy hagyja el a 0 és 1 sorokat. A kód kimenete az alábbiakban látható:

Pandák cseppindex oszlopa: Példákkal magyarázva

Látható, hogy a 0. és 1. sor már nincs a DataFrame-ben.

Dobjuk el az Osztály és a Fizetés oszlopokat is. Ehhez a következő kódot használhatjuk:

# Dropping columns by name
df = df.drop(['Salary', 'Department'], axis=1)

Ebben a szkriptben megkérjük a tolmácsot, hogy dobja el azokat az oszlopokat, amelyek oszlopfejléceként a Fizetés és az Osztály szerepel. Ennek a kódnak a kimenete az alábbiakban látható:

Pandák cseppindex oszlopa: Példákkal magyarázva

Ez az utolsó DataFrame-ünk. Összesen két sort és két oszlopot töröltünk a DataFrame-ünkből a drop módszerrel.

Ha többet szeretne megtudni a pandák MultiIndexéről, tekintse meg a következő videót:

Sorok és oszlopok eldobása Inplace segítségével

Az előző példában láthatja, hogy először módosítjuk a DataFrame-et, majd elmentjük új DataFrame-ként. Ez azonban nem hatékony módja a sorok és oszlopok eldobásának.

A sorok és oszlopok eldobásának másik alternatívája, ha a drop függvény inplace argumentumát igazra állítja .

Ha az inplace paramétert True értékre állítja , akkor véglegesen módosíthatja a DataFrame-et anélkül, hogy újra hozzá kellene rendelnie.

Ez akkor hasznos, ha nagy DataFrame-ekkel foglalkozik, mivel memóriát takaríthat meg azáltal, hogy elkerüli az új DataFrame létrehozását.

A következő példa a sorok és oszlopok eldobására a helyben :

# Dropping rows by index inplace
df.drop(labels=[0, 1], axis=0, inplace=True)

# Dropping columns by name inplace
df.drop(['Salary', 'Department'], axis=1, inplace=True)

A fenti kód kimenete az alábbiakban látható:

Pandák cseppindex oszlopa: Példákkal magyarázva

Itt láthatja, hogy nem hozunk létre új DataFrame-et, hanem módosítjuk az eredetit.

Hogyan dolgozzunk az indexekkel a pandákban

Ebben a részben megvitatjuk, hogyan dolgozhatunk indexekkel egy pandas DataFrame-ben. A következő két alszakaszra térünk ki:

  1. Állítsa be és állítsa vissza az indexet

  2. ID és index oszlop

1. Az index beállítása és visszaállítása

A pandákkal való munka egyik fontos szempontja az indexoszlopok beállításának és visszaállításának a megértése. Az index minden sor kulcsazonosítója, és vannak olyan esetek, amikor érdemes módosítani.

Új index beállítása

Új index beállításához használhatja a set_index() metódust. A set_index szintaxisa az alábbiakban látható:

df.set_index('column_name', inplace=True)

Az inplace=True argumentum itt azt jelenti, hogy módosítjuk a meglévő DataFrame-et.

Ennek bemutatására a következő DataFrame-et használjuk:

Pandák cseppindex oszlopa: Példákkal magyarázva

Tegyük fel, hogy a Név oszlopot a DataFrame indexévé szeretnénk tenni. Ennek eléréséhez a következő kódot használhatjuk:

df.set_index('Name', inplace=True)

Ez a Python-szkript a Name-t fogja a DataFrame indexévé tenni. Ennek a kódnak a kimenete az alábbiakban látható:

Pandák cseppindex oszlopa: Példákkal magyarázva

Az Index értékek visszaállítása

Az index visszaállításához az alapértelmezett formátumra (azaz a RangeIndex értékére 0-tól a DataFrame mínusz 1-ig), használhatja a reset_index() metódust.

A reset_index() szintaxisa az alábbiakban látható:

df.reset_index(drop=True, inplace=True)

A drop=True beállításával az aktuális indexoszlop eltávolításra kerül, míg az inplace=True biztosítja, hogy a változtatások közvetlenül a DataFrame-re vonatkozzanak anélkül, hogy újat hoznának létre.

Amikor ezt a kódot alkalmazzuk az előző DataFrame-re, a következő kimenetet kapjuk:

Pandák cseppindex oszlopa: Példákkal magyarázva

Láthatja, hogy a Név, amely korábban az indexünk volt, visszaállt az alapértelmezett értékekre.

2. További műveletek az indexoszloppal

Amikor például egy CSV-fájlból importál egy DataFrame-et, az index_col paraméterrel megadhat egy oszlopot, amelyet indexként használ.

Az index_col szintaxisa az alábbiakban látható:

df = pd.read_csv('data.csv', index_col='column_name')

Továbbá, ha egy DataFrame-et szeretne exportálni az index oszlop nélkül, akkor az index paramétert False értékre állíthatja .

A módszer szintaxisa az alábbiakban található:

df.to_csv('output.csv', index=False)

Most, hogy megértette az index eldobásának módszerét, nézzük meg, hogyan kezelheti a hibákat a drop függvény használatakor a következő részben.

Hogyan kezeljük a hibákat a Drop funkció használatakor a Pandákban

Ebben a részben megvizsgáljuk, hogyan kezeljük a hibákat és a különleges eseteket, amikor a pandák drop funkciójával eltávolítjuk az indexoszlopokat a DataFrame-ből.

Konkrétan a következőkről fogunk beszélni:

  1. KeyError kezelése

  2. Munka ismétlődő sorokkal

1. A KeyError kezelése

Amikor a drop funkciót pandákban használja, KeyError-ral találkozhat, ha a megadott index vagy oszlop nem található a DataFrame-ben.

A hiba előfordulásának megelőzése érdekében használhatja a errors paramétert. A errors paraméternek két lehetősége van: „emelés” és „figyelmen kívül hagyás”. Alapértelmezés szerint "emelés" értékre van állítva, ami azt jelenti, hogy a kulcshiba emelődik, ha a megadott index vagy oszlop nem található.

Ha azonban el akarja távolítani a hibát, és folytatni szeretné a kód végrehajtását, beállíthatja a „figyelmen kívül hagyás” beállítást.

Tegyük fel, hogy megvan a következő DataFrame. Próbáljunk meg eldobni egy olyan sort, amely nem létezik a DataFrame-ben, és nézzük meg, mi történik:

# Attempt to drop a non-existent index, will raise KeyError
# df.drop(5, inplace=True)

A Python szkript a következő hibát adja:

Az ilyen hibák kezeléséhez győződjön meg arról, hogy az adatkészletben található sorokra hivatkozik.

2. Az ismétlődő sorok kezelése

Az adatok tisztítása során fontos feladat az ismétlődések keresése és eltávolítása.

A DataFrame ismétlődő sorainak kezelése bonyolultabbá teheti a drop funkció használatakor .

Ha el szeretné dobni a sorokat a megkettőzött indexértékek alapján, használhatja a duplikált függvényt, majd logikai indexeléssel csak a nem duplikált sorokat jelölheti ki.

Tegyük fel, hogy a következő DataFrame-ünk van:

Pandák cseppindex oszlopa: Példákkal magyarázva

Láthatja, hogy az adatkészletünkben ismétlődő indexek vannak. Az ismétlődések eltávolításához először azonosítjuk az ismétlődő értékeket a következő kóddal:

# Find duplicated index values
duplicated_rows = df.index.duplicated(keep='first')

Ezt követően csak a nem duplikált sorokat jelöljük ki, és tároljuk az előző DataFrame-ben a következő kóddal:

# Select only non-duplicated rows
df = df[~duplicated_rows]

A végső kimenet az alábbiakban látható:

A végső kimenetben már nincsenek ismétlődő sorok.

Végső gondolatok

Ahogy folytatja adattudományi és elemzési útját, az adatok manipulálásának és kezelésének megértése a legfontosabb készség.

Ennek kulcsfontosságú része az olyan műveletek elsajátítása, mint az indexek eldobása a pandákban. Az index alaphelyzetbe állításának vagy eldobásának ismerete ugródeszkát jelent az adatok megtisztítása, átalakítása és értékes ismeretek megszerzése felé.

Ha megtanulja, hogyan kell eldobni az indexeket, akkor hatékonyabban alakíthatja át DataFrame-eit. Lehetőség lesz tisztább adatkészletek létrehozására is, amelyek könnyebben olvashatók és elemezhetők. Ezenkívül az indexek alaphelyzetbe állítása kulcsfontosságú lehet több DataFrame egyesítésekor vagy összefűzésekor, ahol indexütközések léphetnek fel.

Az indexek eldobásának képessége lehetővé teszi az adatkészletek nagyobb ellenőrzését és rugalmasságát!


Scatter Plot In R Script: Hogyan készítsünk és importáljunk

Scatter Plot In R Script: Hogyan készítsünk és importáljunk

Ebből az oktatóanyagból megtudhatja, hogyan hozhat létre R szórványdiagram vizualizációt a LuckyTemplates alkalmazásban az R Script vizualizáció segítségével.

Emelje fel a külső eszközök menüjét a LuckyTemplates szolgáltatásban

Emelje fel a külső eszközök menüjét a LuckyTemplates szolgáltatásban

Ismerje meg a LuckyTemplates legjobb külső eszközeit, és tanulja meg, hogyan telepítheti őket LuckyTemplates asztalára. Ezek több lehetőséget biztosítanak a jelentések számára.

Hozzon létre gyors mérést a LuckyTemplates alkalmazásban a Quick Measures Pro segítségével

Hozzon létre gyors mérést a LuckyTemplates alkalmazásban a Quick Measures Pro segítségével

Ebben a blogban megismerjük és gyakoroljuk a Quick Measures Pro alkalmazását, amely egy nélkülözhetetlen külső eszköz a LuckyTemplates gyorsmérésekhez.

Mutasd az utolsó frissítés dátumát/időpontját a LuckyTemplates jelentéseiben

Mutasd az utolsó frissítés dátumát/időpontját a LuckyTemplates jelentéseiben

Ismerje meg, hogyan találhat pontos utolsó frissítési dátumot a LuckyTemplates jelentéshez. Mindössze egy M Code-ot és fejlett szerkesztőt kell használnia.

Pénzügyi év dinamikus szűrése a LuckyTemplates jelentésekben

Pénzügyi év dinamikus szűrése a LuckyTemplates jelentésekben

Ebben az oktatóanyagban arról fogunk beszélni, hogyan lehet hatékonyan szűrni több adatot pénzügyi évenként a LuckyTemplates jelentéseiben.

Power Query M nyelvi oktatóanyag és mesteri oktatóanyag

Power Query M nyelvi oktatóanyag és mesteri oktatóanyag

Ez az oktatóanyag megvitatja, hogyan lehet sikeresen implementálni egy M nyelvet, és hogyan lehet megoldani a Power Query szerkesztőben előforduló gyakori hibákat.

Pandák cseppindex oszlopa: Példákkal magyarázva

Pandák cseppindex oszlopa: Példákkal magyarázva

Pandák cseppindex oszlopa: Példákkal magyarázva

7 módszer annak ellenőrzésére, hogy egy Python-karakterlánc tartalmaz-e részkarakterláncot

7 módszer annak ellenőrzésére, hogy egy Python-karakterlánc tartalmaz-e részkarakterláncot

7 módszer annak ellenőrzésére, hogy egy Python-karakterlánc tartalmaz-e részkarakterláncot

A Power Automate dinamikus tartalom áttekintése

A Power Automate dinamikus tartalom áttekintése

Ismerje meg, mi az a Power Automate Dynamic Content, és hogyan teszi lehetővé a felhasználók számára az előző lépésekből származó mezőhivatkozások kiválasztását vagy kifejezések írását.

Fájl helyének megváltoztatása a LuckyTemplates lekérdezési paraméterével

Fájl helyének megváltoztatása a LuckyTemplates lekérdezési paraméterével

Ebből az oktatóanyagból megtudhatja, hogyan oszthat meg egy fájlt olyan személlyel, aki nem tagja a vállalatának, a LuckyTemplates sql lekérdezési paraméterével.