Pandas Cheat Sheet pro Data Science in Python
⚡ Chytré shrnutí
Tahy k PANDĚ shrnují nejpoužívanější příkazy knihovny na jednu stránku. Tato příručka je seskupuje podle úkolu: instalace, sestavení řad a datových rámců, import souborů, výběr řádků, čištění dat, použití funkcí a export výsledků.

Co je to tahák pro Pandy?
Knihovna Pandas nabízí stovky funkcí, ale v každodenní práci se objevuje jen malá podmnožina. Tahák na Pandy je jednostránkový referenční seznam těchto příkazů seskupených podle úkolu, který vykonávají.
Zahrnuje struktury Series a DataFrame, import a export souborů, výběr a řazení dat, čištění hodnot a používání funkcí. Každá níže uvedená část obsahuje krátké vysvětlení se spustitelným kódem, takže stránka slouží také jako opakování vašich znalostí. dovednosti analýzy dat.
👉 Stáhněte si PDF Cheat Sheet zde
Jak nainstalovat a importovat Pandy
Dva příkazy nastavují Pandas a oba běží v terminálu nebo Jupyter zápisník buňka.
Krok 1) Instalace Pandas
Spusťte to jednou pro každé prostředí; v buňce poznámkového bloku před to napište vykřičník.
pip install pandas
Krok 2) Import Pandas
Importujte balíček pod aliasem pd, což každý zde uvedený příklad předpokládá.
import pandas as pd
Nyní můžete volat funkce Pandas pro manipulaci s daty, jejich analýzu a čištění. Níže uvedené sekce jsou uvedeny v pořadí, v jakém je obvykle používáte.
Datové struktury Pandas
Pandas má dvě datové struktury, Série a DataFrameObě jsou označená pole a obě mohou obsahovat libovolný datový typ. Jediný rozdíl je dimenzionalita: Series je jednorozměrné pole a DataFrame je dvourozměrné pole sestavené z nemotorný pole pod nimi.
| vlastnost | Série | DataFrame |
|---|---|---|
| Rozměry | Jednorozměrný | Dvourozměrný |
| Pojme | Jeden sloupec s popiskem | Mnoho sloupců, smíšené typy dat |
| Stavitel | pd.Série() | pd.DataFrame() |
1. Řada
Je to jednorozměrné označené pole. Může obsahovat libovolný datový typ a None stává se chybějící hodnotou.
s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])
2. DataFrame
Jedná se o dvourozměrné označené pole. Může obsahovat libovolný datový typ a různé velikosti sloupců.
data = {'RollNo' : [101, 102, 75, 99],
'Name' : ['Mithlesh', 'Ram', 'Rudra', 'Mithlesh'],
'Course' : ['Nodejs', None, 'Nodejs', 'JavaScript']
}
df = pd.DataFrame(data, columns=['RollNo', 'Name', 'Course'])
df.head()
Níže uvedený tištěný tahák shromažďuje stejné příkazy na jedné stránce.
Import dat
Pandy dokážou číst mnoho typů souborů přímo do DataFrame. Každý níže uvedený čtecí modul vrátí jeden a read_csv() je nejpoužívanější.
# Import a CSV file pd pd.read_csv(filename) # Import a TSV file pd.read_table(filename) # Import a Excel file pd pd.read_excel(filename) # Import a SQL table/database pd.read_sql(query, connection_object) # Import a JSON file pd.read_json(json_string) # Import a HTML file pd.read_html(url) # From clipboard to read_table() pd.read_clipboard() # From dict pd.DataFrame(dict)
Výběr
Prvky můžete vybírat podle jejich umístění nebo podle jejich indexového popisku. Stejná syntaxe hranatých závorek vybírá řádky, sloupce a řezy z obou struktur.
1. Řada
# Accessing one element from Series s['D'] # Accessing all elements between two given indices s['A':'C'] # Accessing all elements from starting till given index s[:'C'] # Accessing all elements from given index till end s['B':]
2. DataFrame
# Accessing one column df df['Name'] # Accessing rows from after given row df[1:] # Accessing till before given row df[:1] # Accessing rows between two given rows df[1:2]
Výběr podle logického indexování a nastavení
Použijte iloc a iat pro celočíselné pozice a loc a at pro štítky.
1. Podle pozice
df.iloc[0, 1] df.iat[0, 1]
2. Podle štítku
df.loc[[0], ['Name']]
3. Podle štítku/pozice
df.loc[2] # Both are same
df.iloc[2]
4. Booleovské indexování
Booleovská maska uchovává pouze řádky, kde je podmínka True. Druhý příklad přidává operátor NOT. ~, takže vrací i hodnoty, které nejsou větší než 1.
# Series s where value is > 1 s[(s > 0)] # Series s where value is <-2 or >1 s[(s < -2) | ~(s > 1)] # Use filter to adjust DataFrame df[df['RollNo']>100] # Set index a of Series s to 6 s['D'] = 10 s.head()
Čištění dat
Pro Python pro účely cheatů pro čištění dat můžete provádět následující operace:
- Přejmenujte sloupce pomocí
rename()metoda. - Aktualizujte hodnoty pomocí
at[]oriat[]metoda pro přístup k konkrétním prvkům a jejich úpravu. - Vytvořte kopii řady nebo datového rámce pomocí
copy()metoda. - Zkontrolujte hodnoty NULL pomocí
isnull()metodu a odstraňte je pomocídropna()metoda. - Zkontrolujte duplicitní hodnoty pomocí
duplicated()metodu. Ukažte je pomocídrop_duplicates()metoda. - Nahraďte hodnoty NULL pomocí
fillna()metoda se zadanou hodnotou. - Nahraďte hodnoty pomocí
replace()metoda. - Seřadit hodnoty pomocí
sort_values()metoda. - Seřaďte hodnoty pomocí
rank()metoda.
# Renaming columns df.columns = ['a','b','c'] df.head() # Mass renaming of columns df = df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}) # Or use this edit in same DataFrame instead of in copy df.rename(columns={'RollNo': 'ID', 'Name': 'Student_Name'}, inplace=True) df.head() # Counting duplicates in a column df.duplicated(subset='Name') # Removing entire row that has duplicate in given column df.drop_duplicates(subset=['Name']) # You can choose which one keep - by default is first df.drop_duplicates(subset=['Name'], keep='last') # Checks for Null Values s.isnull() # Checks for non-Null Values - reverse of isnull() s.notnull() # Checks for Null Values df df.isnull() # Checks for non-Null Values - reverse of isnull() df.notnull() # Drops all rows that contain null values df.dropna() # Drops all columns that contain null values df.dropna(axis=1) # Replaces all null values with 'Guru99' df.fillna('Guru99') # Replaces all null values with the mean s.fillna(s.mean()) # Converts the datatype of the Series to float s.astype(float) # Replaces all values equal to 6 with 'Six' s.replace(6,'Six') # Replaces all 2 with 'Two' and 6 with 'Six' s.replace([2,6],['Two','Six']) # Drop from rows (axis=0) s.drop(['B', 'D']) # Drop from columns(axis=1) df.drop('Name', axis=1) # Sort by labels with axis df.sort_index() # Sort by values with axis df.sort_values(by='RollNo') # Ranking entries df.rank() # s1 is pointing to same Series as s s1 = s # s_copy of s, but not pointing same Series s_copy = s.copy() # df1 is pointing to same DataFrame as df df1 = s # df_copy of df, but not pointing same DataFrame df_copy = df.copy()
Všimněte si, že s1 = s vytváří pouze druhý název pro stejný objekt, nikdy kopii – proto copy() následuje to.
Načítání informací
Pro načtení informací můžete provést tyto operace:
- Použití
shapeatribut pro získání počtu řádků a sloupců. - Použití
head()ortail()metoda pro získání prvních nebo posledních několika řádků jako vzorku. - Použití
info(),describe()ordtypesmetoda pro získání informací o datovém typu, počtu, průměru, směrodatné odchylce, minimálních a maximálních hodnotách. - Použití
count(),min(),max(),sum(),mean()amedian()metody pro získání specifických statistických informací o hodnotách. - Použití
loc[]metoda pro získání řádku. - Použití
groupby()metoda pro použití funkce GROUP BY k seskupení podobných hodnot ve sloupci datového rámce.
1. Základní informace
# Counting all elements in Series len(s) # Counting all elements in DataFrame len(df) # Prints number of rows and columns in dataframe df.shape # Prints first 10 rows by default, if no value set df.head(10) # Prints last 10 rows by default, if no value set df.tail(10) # For counting non-Null values column-wise df.count() # For range of index df df.index # For name of attributes/columns df.columns # Index, Data Type and Memory information df.info() # Datatypes of each column df.dtypes # Summary statistics for numerical columns df.describe()
2. Shrnutí
# For adding all values column-wise df.sum() # For min column-wise df.min() # For max column-wise df.max() # For mean value in number column df.mean() # For median value in number column df.median() # Count non-Null values s.count() # Count non-Null values df.count() # Return Series of given column df['Name'].tolist() # Name of columns df.columns.tolist() # Creating subset df[['Name', 'Course']] # Return number of values in each group df.groupby('Name').count()
Použití funkcí
apply() vloží funkci do každé hodnoty. Pravidla zarovnání pak určují, co se stane, když dva objekty sdílejí pouze část svého indexu.
# Define function f = lambda x: x*5 # Apply this function on given Series - For each value s.apply(f) # Apply this function on given DataFrame - For each value df.apply(f)
1. Vnitřní zarovnání dat
# NA values for indices that don't overlap s2 = pd.Series([8, -1, 4], index=['A', 'C', 'D']) s + s2
2. Aritmetika Operas metodami výplně
# Fill values that don't overlap
s.add(s2, fill_value=0)
3. Filtr, řazení a seskupování
Tyto funkce lze použít k filtrování, řazení a seskupováníping Objekty Series a DataFrame.
# Filter rows where column is greater than 100 df[df['RollNo']>100] # Filter rows where 70 < column < 101 df[(df['RollNo'] > 70) & (df['RollNo'] < 101)] # Sorts values in ascending order s.sort_values() # Sorts values in descending order s.sort_values(ascending=False) # Sorts values by RollNo in ascending order df.sort_values('RollNo') # Sorts values by RollNo in descending order df.sort_values('RollNo', ascending=False)
Export dat
Každý níže uvedený zapisovač zrcadlí čtečku z importní sekce, takže soubor může absolvovat celou cestu bez dalších nástrojů.
# Export as a CSV file df df.to_csv(filename) # Export as a Excel file df df.to_excel(filename) # Export as a SQL table df df.to_sql(table_name, connection_object) # Export as a JSON file df.to_json(filename) # Export as a HTML table df.to_html(filename) # Write to the clipboard df.to_clipboard()
Colab of Cheat Sheet
Každý příkaz zde lze spustit v doprovodném poznámkovém bloku: Cheat Sheet pro pandy – Python pro Data Science.ipynb.

