A pivot táblázatok továbbra is az MS Excel legelismertebb és legszélesebb körben használt eszközei közé tartoznak. Legyen szó adatelemzőről, adatmérnökről vagy egyszerűen rendszeres felhasználóról, nagy eséllyel már megvan az MS Excel szelíd pontja.
Ennek ellenére egyre több lehetőség nyílik az MS Excel eszközeinek és segédprogramjainak replikálására, különösen Pythonban. Tudta, hogy a Python DataFrames-ben kiterjedt pivot táblákat hozhat létre néhány soros kóddal?
Igen, ez helyes; ha felkeltette az érdeklődését, itt megteheti.
Előfeltételek a pivot táblák létrehozásához
Mint minden más programozási nyelvnek, még a Pythonnak is teljesítenie kell néhány előfeltételt, mielőtt hozzáférne a kódoláshoz.
A legoptimálisabb élmény eléréséhez a legelső Python pivot tábla létrehozása során a következőkre lesz szüksége:
- Python IDE: A legtöbb Python kód integrált fejlesztői környezettel (IDE) előre telepítve van a rendszerére. Több is van Python-kompatibilis IDE-k a piacon, köztük a Jupyter Notebook, a Spyder, a PyCharm és még sok más.
- Minta adat: Szemléltetésképpen itt van egy mintaadatkészlet, amelyen dolgozhat. Alternatív megoldásként nyugodtan módosíthatja ezeket a kódokat közvetlenül az élő adatokon.
Adatminta link:Minta szupermarket
Az Essential Libraries importálása
Mivel a Python a harmadik féltől származó könyvtárak koncepcióján dolgozik, importálnia kell a Pandák könyvtár a pivotok létrehozásához.
Használhatja a Pandákat importáljon egy Excel fájlt a Pythonba és tárolja az adatokat egy DataFrame-ben. Pandák importálásához használja a import parancsot a következő módon:
import pandák mint pd
Hogyan készítsünk Pivotokat a Pythonban
Mivel a könyvtár már elérhető, importálnia kell az Excel fájlt a Pythonba, amely az alapja a Python pivotok létrehozásának és tesztelésének. Tárolja az importált adatokat egy DataFrame-ben a következő kóddal:
# Hozzon létre egy új DataFrame-et
# cserélje ki itt a saját útvonalával
útvonal = "C://Users//user/OneDrive//Desktop//"
# itt adhatja meg a fájlnevet
fájl = "Minta - Superstore.xls"
df = pd.read_excel (elérési út + fájl)
df.fej()
Ahol:
- df: Változónév a DataFrame adatok tárolására
- pd: A Pandas könyvtár álneve
- read_excel(): Pandas funkció, amellyel beolvashat egy Excel-fájlt Pythonba
- pálya: Az Excel-fájl tárolási helye (Sample Superstore)
- fájlt: Importálandó fájlnév
- fej(): Alapértelmezés szerint a DataFrame első öt sorát jeleníti meg
A fenti kód importálja az Excel fájlt a Pythonba, és egy DataFrame-ben tárolja az adatokat. Végül a fej funkció megjeleníti az adatok első öt sorát.
Ez a funkció praktikus annak biztosítására, hogy az adatok helyesen legyenek importálva a Pythonba.
Mely kimutatástáblázat-mezők léteznek a Pythonban?
Az Excel megfelelőjéhez hasonlóan a pivot tábla is hasonló mezőket tartalmaz a Pythonban. Íme néhány mező, amit tudnia kell:
- Adat: Az adatmező a Python DataFrame-ben tárolt adatokra vonatkozik
- Értékek: Egy pivoton belül használt oszlopos adatok
- Index: Index oszlop(ok) az adatok csoportosítására
- Oszlopok: Az oszlopok segítenek a meglévő adatok egy DataFrame-en belüli összesítésében
Az index funkció használata mögötti cél
Mivel az indexfüggvény a pivot tábla elsődleges eleme, az adatok alapvető elrendezését adja vissza. Más szavakkal, az adatait csoportosíthatja a index funkció.
Tegyük fel, hogy szeretne látni néhány összesített értéket a listában felsorolt termékekhez Szegmens oszlop. Kiszámíthat egy előre meghatározott aggregátumot (átlagértéket) a Pythonban a kijelölt oszlopok anindex értékének megadásával.
df.pivot_table (index = "Szegmens")
Ahol:
- df:Az adatokat tartalmazó DataFrame
- Pivot tábla:Pivot táblázat funkció a Pythonban
- index: Beépített funkció egy oszlop indexként való meghatározásához
- Szegmens: Indexértékként használandó oszlop
A Python változónevei megkülönböztetik a kis- és nagybetűket, ezért ne térjen el az ebben az útmutatóban felsorolt előre meghatározott változónevektől.
A többindexes értékek használata
Ha több indexoszlopot szeretne használni, megadhatja az oszlopneveket az a lista az index funkción belül. Mindössze annyit kell tennie, hogy megadja az oszlopneveket egy halmazon belül szögletes zárójelek ([ ]), az alábbiak szerint:
df.pivot_table (index = ["Kategória", "Alkategória"])
A pivot függvény behúzza az index oszlopot a kimenetben. A Python megjeleníti a átlagos az összes számértéket az egyes indexértékekkel szemben.
Tanulja meg korlátozni az értékeket a kimenetben
Mivel a Python alapértelmezés szerint az összes numerikus oszlopot kiválasztja, korlátozhatja az értékeket a végső kimenetben megjelenő eredmények módosításához. Használja a értékeket függvényt a megtekinteni kívánt oszlopok meghatározásához.
df.pivot_table (index = ["Vidék", "Kategória", "Alkategória"], értékek = "Értékesítés")
A végső kimenetben három indexoszlop lesz, és az Értékesítés oszlop átlagértékei az egyes elemekhez viszonyítva.
Összesített függvények meghatározása a kimutatásban
Mi történik, ha alapértelmezés szerint nem akarja kiszámítani az átlagértékeket? A pivot tábla számos egyéb funkcióval rendelkezik, amelyek túlmutatnak az egyszerű átlag kiszámításán.
A kód beírása a következőképpen történik:
df.pivot_table (index = ["Kategória"], értékek = "Értékesítés", aggfunc = [összeg, max, min, len])
Ahol:
- összeg: Kiszámítja az értékek összegét
- max: Kiszámítja a maximális értéket
- min: Kiszámítja a maximális értéket
- len: Kiszámítja az értékek számát
Ezeket a függvényeket külön kódsorokban is meghatározhatja.
Végösszeg hozzáadása a kimutatástáblához
A végösszegek nélkül egyetlen adatelem sem teljes. Az adatoszloponkénti végösszeg kiszámításához és megjelenítéséhez használja a margók és margók_neve funkció.
df.pivot_table (index = ["Kategória"], értékek = "Értékesítés", aggfunc = [összeg, max, min, len], margins=Igaz, margók_neve='Grand Totals')
Ahol:
- margók: A végösszeg kiszámítására szolgáló függvény
- margins_name: Adja meg a kategória nevét az index oszlopban (például végösszeg)
Módosítsa és használja a végső kódot
Íme az utolsó kód rövid összefoglalója:
import pandák mint pd
# cserélje ki itt a saját útvonalával
útvonal = "C://Users//user/OneDrive//Desktop//"
# itt adhatja meg a fájlnevet
fájl = "Minta - Superstore.xls"
df = pd.read_excel (elérési út + fájl)
df.pivot_table (index = ["Vidék", "Kategória", "Alkategória"], értékek = "Értékesítés",
aggfunc = [összeg, max, min, len],
margók=Igaz,
margók_név='Grand Totals')
Pivot táblák létrehozása Pythonban
Amikor Pivot táblákat használ, a lehetőségek egyszerűen végtelenek. A Python segítségével könnyedén kezelhet hatalmas adattömböket anélkül, hogy aggódnia kellene az adatok eltérései és a rendszer késések miatt.
Mivel a Python funkciói nem korlátozódnak az adatok pivotokba tömörítésére, több Excel-munkafüzet és munkalap kombinálható, miközben számos kapcsolódó funkciót hajt végre a Python segítségével.
A Pythonnal mindig van valami új a láthatáron.