Cheat Sheet di Panda per la scienza dei dati in Python
Cos'è il Cheat Sheet di Panda?
La libreria di Panda ha molte funzioni, ma alcune di queste creano confusione per alcune persone. Abbiamo qui fornito una risorsa utile disponibile chiamata Python Foglio informativo sui panda. Spiega le basi di Panda in modo semplice e conciso.
Che tu sia un principiante o esperto con i panda, questo cheat sheet può fungere da utile guida di riferimento. Copre una varietà di argomenti, incluso l'utilizzo delle strutture dati Series e DataFrame, la selezione e l'ordinamento dei dati e l'applicazione di funzioni ai dati.
In sintesi, questo Panda Python Cheat Sheet è una buona risorsa per chiunque desideri saperne di più sull'utilizzo Python per la scienza dei dati. È un pratico strumento di riferimento. Può aiutarti a migliorare il tuo capacità di analisi dei dati e lavorare in modo più efficiente con i Panda.
👉 Scarica qui il PDF del Cheat Sheet
Spiegazione delle funzioni importanti in Panda:
Per iniziare a lavorare con le funzioni di Panda, devi installare e importare Panda. Per farlo ci sono due comandi:
Passaggio 1) # Installa Panda
Pip installa i panda
Passaggio 2) # Importa Panda
Importa panda come pd
Ora puoi iniziare a lavorare con le funzioni di Panda. Lavoreremo per manipolare, analizzare e pulire i dati. Ecco alcune importanti funzioni dei panda.
Strutture dati di Panda
Come abbiamo già discusso, Pandas ha due strutture dati chiamate Series e DataFrames. Entrambi sono array etichettati e possono contenere qualsiasi tipo di dati. L'unica differenza è che Series è un array unidimensionale e DataFrame è un array bidimensionale.
1. Serie
È un array etichettato unidimensionale. Può contenere qualsiasi tipo di dati.
s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])
2. Telaio dati
È un array etichettato bidimensionale. Può contenere qualsiasi tipo di dati e diverse dimensioni di colonne.
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()
Importazione di dati
I panda hanno la capacità di importare o leggere vari tipi di file nel tuo notebook.
Ecco alcuni esempi riportati di seguito.
# 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 posizione o all'indice. È possibile selezionare righe, colonne e valori distinti utilizzando queste tecniche.
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
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
# 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 il metodo rename().
- Aggiorna i valori utilizzando il metodo at[] o iat[] per accedere e modificare elementi specifici.
- Crea una copia di una serie o di un frame di dati utilizzando il metodo copy().
- Controlla i valori NULL utilizzando il metodo isnull() e rilasciali utilizzando il metodo dropna().
- Verifica la presenza di valori duplicati utilizzando il metodo duplicated(). Rilasciali utilizzando il metodo drop_duplicates().
- Sostituisci i valori NULL utilizzando il metodo fill() con un valore specificato.
- Sostituisci i valori utilizzando il metodo replace().
- Ordina i valori utilizzando il metodo sort_values().
- Classificare i valori utilizzando il metodo rango().
# 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()
Recupero delle informazioni
È possibile eseguire queste operazioni per recuperare informazioni:
- Utilizza l'attributo shape per ottenere il numero di righe e colonne.
- Utilizza il metodo head() o tail() per ottenere la prima o l'ultima riga come esempio.
- Utilizzare il metodo info(), description() o dtypes per ottenere informazioni sul tipo di dati, conteggio, media, deviazione standard, valori minimo e massimo.
- Utilizzare i metodi count(), min(), max(), sum(), mean() e median() per ottenere informazioni statistiche specifiche per i valori.
- Utilizzare il metodo loc[] per ottenere una riga.
- Utilizza il metodo groupby() 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
# 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
Le seguenti funzioni possono essere utilizzate per filtrare, ordinare e raggruppare per Serie 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
Pandas ha la capacità di esportare o scrivere dati in vari formati. Ecco alcuni esempi riportati di seguito.
# 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()
Conclusione del Cheat Sheet di Panda:
Pandas è la libreria open source in Python per lavorare con i set di dati. La sua capacità di analizzare, pulire, esplorare e manipolare i dati. Pandas è costruito sopra Numpy. Viene utilizzato con altri programmi come Matplotlib e Scikit-Impara. Copre argomenti come strutture di dati, selezione dei dati, importazione di dati, indicizzazione booleana, eliminazione di valori, ordinamento e pulizia dei dati. Abbiamo anche preparato un cheat sheet sui panda in pdf per l'articolo. Pandas è una biblioteca in Python e la scienza dei dati utilizza questa libreria per lavorare con dataframe e serie Panda. Abbiamo discusso vari comandi dei panda in questo cheatsheet.
Colab di Cheat Sheet
Il mio file di esercizi Colab per Panda – Foglio informativo sui panda – Python per Data Science.ipynb