Tabele przestawne nadal należą do najbardziej szanowanych i powszechnie używanych narzędzi w programie MS Excel. Niezależnie od tego, czy jesteś analitykiem danych, inżynierem danych, czy po prostu zwykłym użytkownikiem, prawdopodobnie masz już słabość do MS Excel.
Niemniej jednak istnieje coraz większy zakres replikacji narzędzi i narzędzi MS Excel, zwłaszcza w Pythonie. Czy wiesz, że możesz tworzyć rozbudowane tabele przestawne w DataFrames Pythona za pomocą kilku linijek kodu?
Tak, to jest poprawne; jeśli jesteś zaintrygowany, oto jak możesz to zrobić.
Warunki wstępne tworzenia tabel przestawnych
Jak każdy inny język programowania, nawet Python wymaga spełnienia kilku warunków wstępnych przed przystąpieniem do kodowania.
Aby uzyskać najbardziej zoptymalizowane wrażenia podczas tworzenia pierwszej tabeli przestawnej w Pythonie, potrzebujesz następujących elementów:
- IDE Pythona: Większość kodów Pythona ma wstępnie zainstalowane zintegrowane środowisko programistyczne (IDE) w swoim systemie. Istnieje kilka IDE kompatybilne z Pythonem na rynku, w tym Jupyter Notebook, Spyder, PyCharm i wiele innych.
- Przykładowe dane: Aby zilustrować, oto przykładowy zestaw danych, nad którym możesz pracować. Możesz też dostosować te kody bezpośrednio na swoich aktualnych danych.
Link do próbki danych:Przykładowy supermarket
Importowanie podstawowych bibliotek
Ponieważ Python działa na koncepcji bibliotek innych firm, musisz zaimportować Pandy biblioteka do tworzenia czopów.
Możesz użyć Pand, aby zaimportuj plik Excel do Pythona i przechowywać dane w DataFrame. Aby zaimportować Pandy, użyj import polecenie w następujący sposób:
import pandy jak pd
Jak tworzyć Pivoty w Pythonie
Ponieważ biblioteka jest już dostępna, musisz zaimportować plik Excel do Pythona, który jest podstawą do tworzenia i testowania osi w Pythonie. Przechowuj zaimportowane dane w DataFrame z następującym kodem:
# Utwórz nową ramkę DataFrame
# zastąp tutaj własną ścieżką
ścieżka = "C://Użytkownicy//użytkownik/OneDrive//Pulpit//"
# tutaj możesz zdefiniować nazwę pliku
plik = "Próbka - Superstore.xls"
df = pd.read_excel (ścieżka + plik)
df.głowa()
Gdzie:
- df: Nazwa zmiennej do przechowywania danych DataFrame
- pd: Alias dla biblioteki Pandy
- read_excel(): Funkcja Pandy do odczytu pliku Excel do Pythona
- ścieżka: Lokalizacja, w której przechowywany jest plik Excel (Sample Superstore)
- plik: Nazwa pliku do zaimportowania
- głowa(): Domyślnie wyświetla pierwsze pięć wierszy DataFrame
Powyższy kod importuje plik Excel do Pythona i przechowuje dane w DataFrame. Wreszcie głowa funkcja wyświetla pierwsze pięć wierszy danych.
Ta funkcja jest przydatna, aby zapewnić prawidłowe importowanie danych do Pythona.
Które pola tabeli przestawnej istnieją w Pythonie?
Podobnie jak jej odpowiednik w Excelu, tabela przestawna ma podobny zestaw pól w Pythonie. Oto kilka pól, o których musisz wiedzieć:
- Dane: Pole danych odnosi się do danych przechowywanych w Python DataFrame
- Wartości: Dane kolumnowe używane w ramach obrotu
- Indeks: Kolumna (kolumny) indeksu do grupowania danych
- Kolumny: Kolumny pomagają w agregacji istniejących danych w DataFrame
Cel korzystania z funkcji indeksowania
Ponieważ funkcja indeksu jest podstawowym elementem tabeli przestawnej, zwraca podstawowy układ danych. Innymi słowy, możesz pogrupować swoje dane za pomocą indeks funkcjonować.
Załóżmy, że chcesz zobaczyć zagregowane wartości produktów wymienionych w Człon kolumna. Możesz obliczyć predefiniowaną agregację (wartość średnią) w Pythonie, definiując wyznaczoną kolumnę jako wartość indeksu.
df.tabela_przestawna (indeks = "Człon")
Gdzie:
- df:DataFrame zawierająca dane
- Stół obrotowy:Funkcja tabeli przestawnej w Pythonie
- indeks: Wbudowana funkcja do definiowania kolumny jako indeksu
- Człon: Kolumna używana jako wartość indeksu
W nazwach zmiennych Pythona rozróżniana jest wielkość liter, więc unikaj odchodzenia od predefiniowanych nazw zmiennych wymienionych w tym przewodniku.
Jak korzystać z wartości wieloindeksowych
Jeśli chcesz użyć wielu kolumn indeksu, możesz zdefiniować nazwy kolumn w a lista w ramach funkcji indeksu. Wszystko, co musisz zrobić, to określić nazwy kolumn w zestawie nawiasy kwadratowe ([ ]), jak pokazano niżej:
df.tabela_przestawna (indeks = ["Kategoria", "Podkategoria"])
Funkcja przestawna wcina kolumnę indeksu w danych wyjściowych. Python wyświetla oznaczać wszystkich wartości liczbowych względem każdej wartości indeksu.
Naucz się ograniczać wartości w wynikach
Ponieważ Python domyślnie wybiera wszystkie kolumny liczbowe, możesz ograniczyć wartości, aby dostosować wyniki wyświetlane w ostatecznym wyniku. Użyj wartości funkcja, aby zdefiniować kolumny, które chcesz zobaczyć.
df.tabela_przestawna (indeks = ["Region", "Kategoria", "Podkategoria"], wartości = "Sprzedaż")
W ostatecznym wyniku pojawią się trzy kolumny indeksu, a średnie wartości dla kolumny Sprzedaż umieszczone na każdym elemencie.
Definiowanie funkcji agregujących w tabeli przestawnej
Co się stanie, jeśli nie chcesz domyślnie obliczać wartości średnich? Tabela przestawna ma wiele innych funkcji, które wykraczają poza obliczanie prostej średniej.
Oto jak napisać kod:
df.tabela_przestawna (indeks = ["Kategoria"], wartości = "Sprzedaż", aggfunc = [suma, maks, min, dł])
Gdzie:
- suma: Oblicza sumę wartości
- maks.: Oblicza wartość maksymalną
- min: Oblicza wartość maksymalną
- dł.: Oblicza liczbę wartości
Możesz również zdefiniować każdą z tych funkcji w osobnych wierszach kodu.
Jak dodać sumy końcowe do tabeli przestawnej
Żaden zasób danych nie jest kompletny bez sum całkowitych. Aby obliczyć i wyświetlić sumy końcowe na kolumnę danych, użyj marże oraz margins_name funkcjonować.
df.tabela_przestawna (indeks = ["Kategoria"], wartości = "Sprzedaż", aggfunc = [suma, max, min, len], margins=True, margins_name='Sumy końcowe')
Gdzie:
- marże: Funkcja do obliczania sumy całkowitej
- nazwa_marginesu: Określ nazwę kategorii w kolumnie indeksu (na przykład Sumy końcowe)
Zmodyfikuj i użyj ostatecznego kodu
Oto ostatni krótki opis kodu:
import pandy jak pd
# zastąp tutaj własną ścieżką
ścieżka = "C://Użytkownicy//użytkownik/OneDrive//Pulpit//"
# tutaj możesz zdefiniować nazwę pliku
plik = "Próbka - Superstore.xls"
df = pd.read_excel (ścieżka + plik)
df.tabela_przestawna (indeks = ["Region", "Kategoria", "Podkategoria"], wartości = "Sprzedaż",
aggfunc = [suma, max, min, len],
marginesy=Prawdziwe,
nazwa_margin='Sumy końcowe')
Tworzenie tabel przestawnych w Pythonie
Kiedy używasz tabel przestawnych, opcje są po prostu nieskończone. Python umożliwia łatwą obsługę ogromnych tablic danych bez martwienia się o rozbieżności danych i opóźnienia systemowe.
Ponieważ funkcje Pythona nie ograniczają się tylko do kondensacji danych w przestawne, możesz łączyć wiele skoroszytów i arkuszy Excela, wykonując jednocześnie szereg powiązanych funkcji z Pythonem.
Dzięki Pythonowi zawsze na horyzoncie pojawia się coś nowego.