Hogyan lehet megváltoztatni az oszlopneveket és a sor indexeket a pandákban?
Az egyik leggyakoribb művelet, amelyet az adatok tisztítása vagy feltáró adatelemzés során végezhetünk az oszlopok vagy sorok nevének manipulálása / javítása során.
Ebben a bejegyzésben látni fogjuk
- Hogyan nevezzük át a pandák adatkeretének oszlopait?
- Hogyan lehet megváltoztatni a pandák adatkeretének sorneveit vagy sorindexeit?
Először töltsük be a pandákat.
# import pandas>import pandas as pd
Használjuk a szoftver asztalosok weboldalának gapminder adatait.
# link to gapminder datadata_url = "http://bit.ly/2cLzoxH"# read data from url as pandas dataframe>gapminder = pd.read_csv(data_url)
a head függvény segítségével ellenőrizzük az adatkeret oszlopainak nevét, az adatok első három sorát.
>print(gapminder.head(3)) country year pop continent lifeExp gdpPercap0 Afghanistan 1952 8425333 Asia 28.801 779.4453141 Afghanistan 1957 9240934 Asia 30.332 820.8530302 Afghanistan 1962 10267083 Asia 31.997 853.100710
Az oszlopfüggvényt is használhatjuk az oszlopnevek lekérésére.
>gapminder.columnsIndex(, dtype="object")
Hogyan nevezhetjük át az oszlopokat a pandákban?
Egy megváltoztathatja a pandák oszlopneveit adatkeret legalább kétféleképpen. Az oszlopok átnevezésének egyik módja a Pandas-ban az, ha a Pfas df.columns-et használja, és közvetlenül új neveket rendel hozzá.
Például, ha oszlopnevek vannak egy listában, akkor a listát oszlopnevekhez rendelheti. közvetlenül.
A gapminder adatkeret oszlopainak megváltoztatásához az új oszlopnevek listáját hozzárendelhetjük a gapminder.col oszlopokhoz
>gapminder.columns =
Ez a listában szereplő neveket oszlopnévként rendeli hozzá a “gapminder” adatkerethez. Ellenőrizhetjük az adatkeretet, hogy ha a head () függvény használatával új oszlopnevek vannak.
>gapminder.head(3) country year population continent life_exp gdp_per_cap0 Afghanistan 1952 8425333 Asia 28.801 779.4453141 Afghanistan 1957 9240934 Asia 30.332 820.8530302 Afghanistan 1962 10267083 Asia 31.997 853.100710
Az oszlopnevek megváltoztatásának ezzel a megközelítésével az a probléma, hogy meg kell változtatni az adatkeret összes oszlopának nevét. Ez a megközelítés nem működne, ha meg akarjuk változtatni, akkor egyszerűen változtassuk meg az egyik nevét oszlop.
Pandák átnevezik a függvényt Oszlopok átnevezése
Az oszlopnevek pandákban történő megváltoztatásának másik módja az átnevezés funkció használata. Az átnevezés használata az oszlopnevek megváltoztatásához sokkal jobb módszer, mint korábban. Lehet channi könnyen megadhatja az adott oszlop nevét. És nem kell minden oszlopnevet megváltoztatni.
Az oszlopnevek megváltoztatásához az átnevezési függvény használatával a Pandas-ban meg kell adni egy leképezőt, egy szótárt, amelynek kulcsai a régi név, az új név pedig az értékek. Itt van egy példa sok oszlopnév megváltoztatására egy szótár használatával. Az inplace = True lehetőséget is használjuk az oszlopnevek helyben történő megváltoztatásához.
Az átnevezési függvény használatának egyik legnagyobb előnye, hogy az átnevezés segítségével annyi oszlopnevet módosíthatunk, amennyit csak akarunk.
Változtassunk meg egyetlen oszlop nevét.
A Panda rename függvény szótár helyett egy függvényt is bevehet. Írhatunk például egy lambda függvényt az aktuális oszlopnevek felvételére, és csak az első három karaktert vesszük figyelembe az új oszlopneveknél.
Hogyan lehet megváltoztatni és sorneveket / indexeket a pandákban?
A pandák átnevezési funkciójának másik jó tulajdonsága, hogy a sor indexek vagy sorok nevének megváltoztatására is használhatjuk.
Csak index argumentumot kell használnunk, és meg kell adnunk, szeretnénk az index nem oszlopok.
Például, ha a 0. és 1. sor nevét nullára és „egyre” akarjuk változtatni a gapminder adatkeretünkben, egy szótárt készítünk, amelyben a régi sorindex nevek kulcsok és új sorok. index értékként.
Láthatjuk, hogy csak az első két sornak új neve van, amire gondoltunk.
Hogyan lehet egyidejűleg megváltoztatni az oszlopneveket és a sorindexeket a pandákban?
A pandák átnevezési funkciójával az oszlopok és a sorok neve is megváltozhat egyszerre, az oszlopok és az index argumentumok használatával is átnevezhetjük a függvényt a megfelelő leképező szótárakkal.
Változtassuk meg az oszlop nevét “lifeExp” a “life_exp” -re és a sor indexekre is “0 & 1” -re “nulla és egy”.
Új vagy a Pandas számára? És nemrég kezdett el Pandával? Nézze meg az új byte Sized Pandas 101 oktatóanyagokat.