Tabelele pivot continuă să fie printre cele mai respectate și utilizate instrumente în MS Excel. Indiferent dacă sunteți un analist de date, un inginer de date sau pur și simplu un utilizator obișnuit, sunt șanse să aveți deja un punct slab pentru MS Excel.
Cu toate acestea, există un domeniu din ce în ce mai mare pentru replicarea instrumentelor și utilităților MS Excel, în special în Python. Știați că puteți crea tabele pivot extinse în Python DataFrames cu câteva linii de cod în sine?
Da este corect; dacă sunteți intrigat, iată cum o puteți face.
Cerințe preliminare pentru crearea tabelelor pivot
Ca orice alt limbaj de programare, chiar și Python are nevoie să îndepliniți câteva cerințe prealabile înainte de a putea ajunge la codificare.
Pentru a obține cea mai optimizată experiență în timp ce creați primul dvs. tabel pivot în Python, iată ce veți avea nevoie:
- IDE Python: Majoritatea codurilor Python au un mediu de dezvoltare integrat (IDE) preinstalat pe sistemul lor. Sunt câteva IDE-uri compatibile Python de pe piață, inclusiv Jupyter Notebook, Spyder, PyCharm și multe altele.
- Date eșantion: Pentru ilustrare, iată un exemplu de set de date la care să lucrați. Alternativ, nu ezitați să modificați aceste coduri direct pe datele dvs. live.
Link exemplu de date:Supermagazin de mostre
Importarea bibliotecilor esențiale
Deoarece Python funcționează pe conceptul de biblioteci terță parte, trebuie să importați panda bibliotecă pentru crearea pivoturilor.
Puteți folosi Pandas pentru importați un fișier Excel în Python și stocați datele într-un DataFrame. Pentru a importa panda, utilizați import comanda in felul urmator:
import panda la fel de pd
Cum se creează pivoturi în Python
Deoarece biblioteca este acum disponibilă, trebuie să importați fișierul Excel în Python, care este baza pentru crearea și testarea pivoturilor în Python. Stocați datele importate într-un DataFrame cu următorul cod:
# Creați un nou DataFrame
# înlocuiți cu propria dvs. cale aici
cale = "C://Users//user/OneDrive//Desktop//"
# puteți defini numele fișierului aici
fisier = "Exemplu - Superstore.xls"
df = pd.read_excel (cale + fișier)
df.cap()
Unde:
- df: Nume variabilă pentru a stoca datele DataFrame
- pd: Alias pentru biblioteca Pandas
- read_excel(): Funcția Pandas pentru a citi un fișier Excel în Python
- cale: Locația în care este stocat fișierul Excel (Sample Superstore)
- fişier: Numele fișierului de importat
- cap(): Afișează primele cinci rânduri ale DataFrame, în mod implicit
Codul de mai sus importă fișierul Excel în Python și stochează datele într-un DataFrame. În cele din urmă, cel cap funcția afișează primele cinci rânduri de date.
Această funcție este utilă pentru a vă asigura că datele sunt importate corect în Python.
Ce câmpuri din tabelul pivot există în Python?
La fel ca omologul său Excel, un tabel pivot are un set similar de câmpuri în Python. Iată câteva domenii despre care trebuie să știți:
- Date: Câmpul de date se referă la datele stocate într-un Python DataFrame
- Valori: Date pe coloană utilizate în cadrul unui pivot
- Index: O coloană(e) index pentru gruparea datelor
- Coloane: Coloanele ajută la agregarea datelor existente într-un DataFrame
Scopul din spatele utilizării funcției index
Deoarece funcția index este elementul principal al unui tabel pivot, returnează aspectul de bază al datelor. Cu alte cuvinte, vă puteți grupa datele cu index funcţie.
Să presupunem că doriți să vedeți niște valori agregate pentru produsele enumerate în Segment coloană. Puteți calcula un agregat predefinit (valoare medie) în Python prin definirea valorii anindexului coloanelor desemnate.
df.pivot_table (index = "Segment")
Unde:
- df:DataFrame care conține datele
- masă rotativă:Funcția tabel pivotant în Python
- index: Funcție încorporată pentru definirea unei coloane ca index
- Segment: coloană de utilizat ca valoare de index
Numele de variabile Python sunt sensibile la majuscule și minuscule, așa că evitați tranziția de la numele de variabile predefinite enumerate în acest ghid.
Cum să utilizați valorile multi-index
Când doriți să utilizați mai multe coloane de index, puteți defini numele coloanelor în a listă în cadrul funcției de index. Tot ce trebuie să faceți este să specificați numele coloanelor într-un set de paranteza patrata ([ ]), așa cum se arată mai jos:
df.pivot_table (index = ["Categorie", "Subcategorie"])
Funcția pivot indentează coloana index în rezultat. Python afișează Rău a tuturor valorilor numerice în raport cu fiecare valoare de indice.
Învață să restrângi valorile din ieșire
Deoarece Python alege toate coloanele numerice în mod implicit, puteți restricționa valorile pentru a modifica rezultatele afișate în rezultatul final. Folosește valorile funcția pentru a defini coloanele pe care doriți să le vedeți.
df.pivot_table (index = ["Regiune", "Categorie", "Subcategorie"], valori = "Vânzări")
În rezultatul final, vor exista trei coloane de index, iar valorile medii pentru coloana Vânzări vor fi comparate cu fiecare element.
Definirea funcțiilor agregate în tabelul pivot
Ce se întâmplă când nu doriți să calculați valorile medii în mod implicit? Tabelul pivot are o mulțime de alte funcționalități, care se extind dincolo de calcularea unei medii simple.
Iată cum se scrie codul:
df.pivot_table (index = ["Categorie"], valori = "Vânzări", aggfunc = [sumă, max, min, len])
Unde:
- sumă: Calculează suma valorilor
- max: Calculează valoarea maximă
- min: Calculează valoarea maximă
- len: Calculează numărul de valori
De asemenea, puteți defini fiecare dintre aceste funcții în linii separate de cod.
Cum să adăugați totaluri mari la tabelul pivot
Niciun material de date nu este complet fără totalurile generale. Pentru a calcula și afișa totalurile generale pe coloana de date, utilizați marginile și margins_name funcţie.
df.pivot_table (index = ["Categorie"], valori = "Vânzări", aggfunc = [sum, max, min, len], margins=True, margins_name='Totaluri mari')
Unde:
- margini: Funcție pentru calcularea totalului general
- margins_name: Specificați numele categoriei în coloana index (de exemplu, Totaluri mari)
Modificați și utilizați codul final
Iată scurtul cod final:
import panda la fel de pd
# înlocuiți cu propria dvs. cale aici
cale = "C://Users//user/OneDrive//Desktop//"
# puteți defini numele fișierului aici
fisier = "Exemplu - Superstore.xls"
df = pd.read_excel (cale + fișier)
df.pivot_table (index = ["Regiune", "Categorie", "Subcategorie"], valori = "Vânzări",
aggfunc = [sum, max, min, len],
marginile=Adevărat,
margins_name='Totaluri mari')
Crearea tabelelor pivot în Python
Când utilizați tabelele Pivot, opțiunile sunt pur și simplu nesfârșite. Python vă permite să gestionați cu ușurință matrice vaste de date, fără să vă faceți griji cu privire la discrepanțe de date și întârzieri ale sistemului.
Deoarece funcționalitățile Python nu sunt limitate doar la condensarea datelor în pivot, puteți combina mai multe registre și foi de lucru Excel, în timp ce efectuați o serie de funcții conexe cu Python.
Cu Python, întotdeauna apare ceva nou la orizont.