Cheat Sheet di Panda per la scienza dei dati in Python
⚡ Riepilogo intelligente
Le guide rapide di Pandas condensano i comandi più utilizzati della libreria in un'unica pagina. Questo riferimento li raggruppa per attività: installazione, creazione di Series e DataFrame, importazione di file, selezione di righe, pulizia dei dati, applicazione di funzioni ed esportazione dei risultati.

Che cos'è un foglio riassuntivo di Pandas?
La libreria Pandas include centinaia di funzioni, ma solo un piccolo sottoinsieme viene utilizzato nel lavoro quotidiano. Foglio riassuntivo di Pandas Si tratta di un documento di riferimento di una pagina che elenca questi comandi, raggruppati in base alla funzione che svolgono.
Copre le strutture Series e DataFrame, l'importazione e l'esportazione di file, la selezione e l'ordinamento dei dati, la pulizia dei valori e l'applicazione di funzioni. Ogni sezione seguente abbina una breve spiegazione a un codice eseguibile, quindi la pagina funziona anche come ripasso per il tuo capacità di analisi dei dati.
👉 Scarica qui il PDF del Cheat Sheet
Come installare e importare Pandas
Due comandi configurano Pandas ed entrambi vengono eseguiti in un terminale o in un Jupyter Taccuino cella.
Passaggio 1) Installare Pandas
Eseguite questo comando una sola volta per ambiente; anteponete un punto esclamativo in una cella del notebook.
pip install pandas
Passaggio 2) Importa Pandas
Importa il pacchetto con l'alias pd, presupposto che tutti gli esempi qui presentati siano impliciti.
import pandas as pd
Ora è possibile richiamare le funzioni di Pandas per manipolare, analizzare e pulire i dati. Le sezioni seguenti le elencano nell'ordine in cui vengono solitamente utilizzate.
Strutture dati di Panda
Pandas ha due strutture dati, Campionati and dataframeEntrambi sono array etichettati ed entrambi possono contenere qualsiasi tipo di dati. L'unica differenza è la dimensionalità: una Series è un array unidimensionale e un DataFrame è un array bidimensionale costruito da NumPy matrici sottostanti.
| Caratteristica | Campionati | dataframe |
|---|---|---|
| Dimensioni | Unidimensionale | Bidimensionale |
| Contiene | Una singola colonna etichettata | Molte colonne, tipi di dati misti |
| Costruttore | pd.Series() | pd.DataFrame() |
1. Serie
Si tratta di un array etichettato unidimensionale. Può contenere qualsiasi tipo di dati e None diventa un valore mancante.
s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])
2. Telaio dati
Si tratta di un array bidimensionale etichettato. Può contenere qualsiasi tipo di dato e colonne di diverse dimensioni.
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()
Il foglio riassuntivo stampabile qui sotto raccoglie gli stessi comandi su un'unica pagina.
Importazione di dati
Pandas può leggere molti tipi di file direttamente in un DataFrame. Ogni lettore qui sotto ne restituisce uno, e leggi_csv() è il più utilizzato.
# 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)
Selezione
È possibile selezionare gli elementi in base alla loro posizione o al loro indice. La stessa sintassi tra parentesi quadre permette di selezionare righe, colonne e sezioni da entrambe le strutture.
1. Serie
# 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. Telaio dati
# 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]
Selezione tramite indicizzazione e impostazione booleana
Usa il iloc and iat per posizioni intere e loc and at per le etichette.
1. Per posizione
df.iloc[0, 1] df.iat[0, 1]
2. Per etichetta
df.loc[[0], ['Name']]
3. Per etichetta/posizione
df.loc[2] # Both are same
df.iloc[2]
4. Indicizzazione booleana
Una maschera booleana mantiene solo le righe in cui la condizione è vera. Il secondo esempio aggiunge l'operatore NOT. ~, quindi restituisce anche valori non superiori a 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()
Pulizia dei dati
Per Python Ai fini della pulizia dei dati, è possibile eseguire le seguenti operazioni:
- Rinominare le colonne utilizzando
rename()metodo. - Aggiorna i valori utilizzando il
at[]oriat[]metodo per accedere e modificare elementi specifici. - Crea una copia di una Series o di un DataFrame utilizzando
copy()metodo. - Verifica la presenza di valori NULL utilizzando
isnull()metodo e rilasciarli usando ildropna()metodo. - Verifica la presenza di valori duplicati utilizzando il
duplicated()metodo. Lasciali cadere usando ildrop_duplicates()metodo. - Sostituire i valori NULL utilizzando
fillna()metodo con un valore specificato. - Sostituire i valori utilizzando il
replace()metodo. - Ordina i valori utilizzando il
sort_values()metodo. - Classifica i valori utilizzando il
rank()metodo.
# 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()
Si noti che s1 = s crea solo un secondo nome per lo stesso oggetto, mai una copia — ecco perché copy() lo segue.
Recupero delle informazioni
È possibile eseguire le seguenti operazioni per recuperare le informazioni:
- Usa il
shapeattributo per ottenere il numero di righe e colonne. - Usa il
head()ortail()metodo per ottenere le prime o le ultime righe come campione. - Usa il
info(),describe()ordtypesMetodo per ottenere informazioni sul tipo di dati, conteggio, media, deviazione standard, valori minimi e massimi. - Usa il
count(),min(),max(),sum(),mean()andmedian()metodi per ottenere informazioni statistiche specifiche sui valori. - Usa il
loc[]metodo per ottenere una riga. - Usa il
groupby()Metodo per applicare la funzione GROUP BY per raggruppare valori simili in una colonna di un DataFrame.
1. Informazioni di base
# 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. Riassunto
# 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()
Applicazione di funzioni
apply() applica una funzione a ogni valore. Le regole di allineamento decidono quindi cosa accade quando due oggetti condividono solo una parte del loro indice.
# 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. Allineamento dei dati interni
# NA values for indices that don't overlap s2 = pd.Series([8, -1, 4], index=['A', 'C', 'D']) s + s2
2. Aritmetica Operazioni con metodi di riempimento
# Fill values that don't overlap
s.add(s2, fill_value=0)
3. Filtra, ordina e raggruppa per
Queste funzioni possono essere utilizzate per filtrare, ordinare e raggruppareping Oggetti Series e 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)
Esportazione dei dati
Ogni scrittore qui sotto rispecchia un lettore della sezione di importazione, in modo che un file possa completare il viaggio di andata e ritorno senza strumenti aggiuntivi.
# 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 di Cheat Sheet
Ogni comando qui presente è eseguibile nel notebook di accompagnamento: Foglio informativo sui panda – Python per Data Science.ipynb.

