Skip to content

Pandas Cheat Sheet (Ściąga)

Szczegółowy przewodnik po korzystaniu z biblioteki Pandas.

Instalacja Pandas

Polecenie Opis
conda install pandas Najlepszym sposobem na uzyskanie pandas jest użycie conda
python3 -m pip install --upgrade pandas Przez PyPI
pip install pandas Standardowa instalacja przez pip

Kluczowe skróty i importowanie pakietów

Skrót Opis
df Dowolny obiekt Pandas DataFrame
s Dowolny obiekt Pandas Series

Metody importu

Polecenie Opis
import pandas as pd Importowanie pandas z aliasem pd
import numpy as np Importowanie numpy z aliasem np

Wybór danych

Polecenie Opis
df[col] Zwraca kolumnę jako Series na podstawie nazwy kolumny
df[[col1, col2]] Zwraca wiele kolumn jako DataFrame
s.iloc[0] Wybór danych według pozycji
s.loc['index_one'] Wybór danych według indeksu
df.iloc[0,:] Zwraca pierwszy wiersz
df.iloc[0,0] Zwraca pierwszy element pierwszej kolumny

Czyszczenie danych

Polecenie Opis
df.columns = ['a','b','c'] Zmiana nazw kolumn
pd.isnull() Sprawdza wartości null w DataFrame; zwraca tablicę Boolean
pd.notnull() Sprawdza wartości nie-null w DataFrame; zwraca tablicę Boolean
df.dropna() Usuwa wszystkie wiersze zawierające wartości null
df.dropna(axis=1) Usuwa wszystkie kolumny zawierające wartości null
df.dropna(axis=1, thresh=n) Usuwa wszystkie wiersze z mniej niż n wartościami nie-null
df.fillna(x) Zastępuje wszystkie wartości null w DataFrame wartością x
s.astype(float) Konwertuje typ danych Series na float
s.replace(1, 'one') Zastępuje wszystkie wartości równe 1 wartością ‘one’
s.replace([1,3], ['one', 'three']) Zastępuje 1 wartością ‘one’ oraz 3 wartością ’three’
df.rename(columns=lambda x: x + 1) Masowa zmiana nazw kolumn
df.rename(columns={'old_name': 'new_name'}) Selektywna zmiana nazw kolumn
df.set_index('column_one') Zmiana kolumny indeksu
df.rename(index=lambda x: x + 1) Masowa zmiana nazw indeksów

Importowanie danych

Polecenie Opis
pd.read_csv(filename) Import danych z pliku CSV
pd.read_table(filename) Import danych z pliku tekstowego z ogranicznikami
pd.read_excel(filename) Import danych z pliku Excel
pd.read_sql(query, connection_object) Import danych z tabeli/bazy danych SQL
pd.read_json(json_string) Import danych z ciągu tekstowego JSON
pd.read_html(url) Wyodrębnianie tabel z adresu URL, ciągu tekstowego lub pliku HTML
pd.read_clipboard() Pobieranie zawartości ze schowka i przekazywanie jej do read_table()
pd.DataFrame(dict) Import danych z obiektu słownika (klucze to nazwy kolumn, wartości to dane)

Eksportowanie danych

Polecenie Opis
df.to_csv(filename) Eksport danych do pliku CSV
df.to_excel(filename) Eksport danych do pliku Excel
df.to_sql(table_name, connection_object) Eksport danych do tabeli SQL
df.to_json(filename) Eksport danych do pliku tekstowego w formacie JSON

Przetwarzanie danych: Filter, Sort i GroupBy

Polecenie Opis
df[df[col] > 0.5] Wybór wierszy, w których wartość w kolumnie ‘col’ jest > 0,5
df.sort_values(col1) Sortowanie danych według kolumny col1 (domyślnie rosnąco)
df.sort_values(col2, ascending=False) Sortowanie danych według kolumny col2 malejąco
df.sort_values([col1, col2], ascending=[True, False]) Sortowanie według col1 rosnąco, następnie col2 malejąco
df.groupby(col) Zwraca obiekt GroupBy pogrupowany według kolumny ‘col’
df.groupby([col1, col2]) Zwraca obiekt GroupBy pogrupowany według wielu kolumn
df.groupby(col1)[col2].mean() Zwraca średnią z kolumny col2 dla każdej grupy w col1
df.pivot_table(index=col1, values=[col2, col3], aggfunc=max) Tworzenie tabeli przestawnej pogrupowanej według col1, obliczającej maksimum dla col2 i col3
df.groupby(col1).agg(np.mean) Zwraca średnią dla wszystkich kolumn pogrupowanych według col1
df.apply(np.mean) Zastosowanie funkcji np.mean do każdej kolumny
df.apply(np.max, axis=1) Zastosowanie funkcji np.max do każdego wiersza

Tworzenie obiektów testowych

Polecenie Opis
pd.DataFrame(np.random.rand(20,5)) Tworzy DataFrame z 20 wierszami i 5 kolumnami liczb losowych
pd.Series(my_list) Tworzy Series z obiektu iterowalnego my_list
df.index = pd.date_range('1900/1/30', periods=df.shape[0]) Dodawanie indeksu daty

Przeglądanie i sprawdzanie danych

Polecenie Opis
df.head(n) Przeglądanie pierwszych n wierszy DataFrame
df.tail(n) Przeglądanie ostatnich n wierszy DataFrame
df.shape Sprawdzanie liczby wierszy i kolumn
df.info() Wyświetlanie indeksu, typów danych i informacji o pamięci
df.describe() Wyświetlanie statystyk podsumowujących dla kolumn numerycznych
s.value_counts(dropna=False) Wyświetlanie unikalnych wartości i liczników dla Series
df.apply(pd.Series.value_counts) Wyświetlanie unikalnych wartości i liczników dla każdej kolumny w DataFrame

Łączenie danych

Polecenie Opis
df1.append(df2) Dołączanie wierszy z df2 na koniec df1
pd.concat([df1, df2], axis=1) Dołączanie kolumn z df2 na koniec df1
df1.join(df2, on=col1, how='inner') Łączenie (Join) w stylu SQL między kolumnami df1 i df2

Statystyki danych

Polecenie Opis
df.describe() Wyświetlanie statystyk podsumowujących dla kolumn numerycznych
df.mean() Zwraca średnią wszystkich kolumn
df.corr() Zwraca współczynnik korelacji między kolumnami
df.count() Zwraca liczbę wartości nie-null w każdej kolumnie
df.max() Zwraca maksymalną wartość każdej kolumny
df.min() Zwraca minimalną wartość każdej kolumny
df.median() Zwraca medianę każdej kolumny
df.std() Zwraca odchylenie standardowe każdej kolumny