Pandas Spickzettel für Data Science in Python
Was ist ein Pandas-Spickzettel?
Die Pandas-Bibliothek hat viele Funktionen, aber einige davon sind für manche Leute verwirrend. Wir haben hier eine hilfreiche Ressource namens Python Pandas-Spickzettel. Er erklärt die Grundlagen von Pandas auf einfache und prägnante Weise.
Egal, ob Sie ein Neuling oder erfahren im Umgang mit Pandas sind, dieser Spickzettel kann Ihnen als nützliches Nachschlagewerk dienen. Es deckt eine Vielzahl von Themen ab, darunter das Arbeiten mit Serien- und DataFrame-Datenstrukturen, das Auswählen und Ordnen von Daten sowie das Anwenden von Funktionen auf Ihre Daten.
Zusammenfassend lässt sich sagen, dass diese Pandas Python Cheat Sheet ist eine gute Ressource für alle, die mehr über die Verwendung erfahren möchten Python für Data Science. Es ist ein praktisches Nachschlagewerk. Es kann Ihnen helfen, Ihre Datenanalysefähigkeiten und effizienter mit Pandas arbeiten.
👉 Laden Sie hier das PDF des Spickzettels herunter
Wichtige Funktionen in Pandas erklären:
Um mit Pandas-Funktionen arbeiten zu können, müssen Sie Pandas installieren und importieren. Dazu gibt es zwei Befehle:
Schritt 1) # Pandas installieren
Pip Pandas installieren
Schritt 2) # Pandas importieren
Pandas als PD importieren
Jetzt können Sie mit den Pandas-Funktionen arbeiten. Wir werden daran arbeiten, die Daten zu manipulieren, zu analysieren und zu bereinigen. Hier sind einige wichtige Funktionen von Pandas.
Pandas-Datenstrukturen
Wie wir bereits besprochen haben, verfügt Pandas über zwei Datenstrukturen namens Series und DataFrames. Beide sind beschriftete Arrays und können jeden Datentyp enthalten. Der einzige Unterschied besteht darin, dass Series ein eindimensionales Array und DataFrame ein zweidimensionales Array ist.
1. Serie
Es handelt sich um ein eindimensional beschriftetes Array. Es kann jeden Datentyp enthalten.
s = pd.Series([2, -4, 6, 3, None], index=['A', 'B', 'C', 'D', 'E'])
2. Datenrahmen
Es handelt sich um ein zweidimensional beschriftetes Array. Es kann jeden Datentyp und unterschiedliche Spaltengrößen enthalten.
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()
Daten importieren
Pandas haben die Möglichkeit, verschiedene Dateitypen in Ihr Notebook zu importieren oder zu lesen.
Nachfolgend finden Sie einige Beispiele.
# 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)
Auswahl
Sie können Elemente nach ihrer Position oder ihrem Index auswählen. Mit diesen Techniken können Sie Zeilen, Spalten und unterschiedliche Werte auswählen.
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. Datenrahmen
# 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]
Auswahl durch boolesche Indizierung und Einstellung
1. Nach Position
df.iloc[0, 1] df.iat[0, 1]
2. Nach Etikett
df.loc[[0], ['Name']]
3. Nach Beschriftung/Position
df.loc[2] # Both are same df.iloc[2]
4. Boolesche Indizierung
# 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()
Datenreinigung
Für Python Mithilfe des Spickzettels zur Datenbereinigung können Sie die folgenden Vorgänge durchführen:
- Benennen Sie Spalten mit der rename()-Methode um.
- Aktualisieren Sie Werte mit der Methode at[] oder iat[], um auf bestimmte Elemente zuzugreifen und diese zu ändern.
- Erstellen Sie mit der Methode copy() eine Kopie einer Serie oder eines Datenrahmens.
- Suchen Sie mit der Methode isnull() nach NULL-Werten und löschen Sie sie mit der Methode dropna().
- Suchen Sie mit der Methode „duplicated()“ nach doppelten Werten. Löschen Sie sie mit der Methode drop_duplicates().
- Ersetzen Sie NULL-Werte mit der Methode fill() durch einen angegebenen Wert.
- Ersetzen Sie Werte mit der Methode replace().
- Sortieren Sie Werte mit der Methode sort_values().
- Ordnen Sie Werte mithilfe der rank()-Methode.
# 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()
Abrufen von Informationen
Sie können diese Vorgänge ausführen, um Informationen abzurufen:
- Verwenden Sie das Shape-Attribut, um die Anzahl der Zeilen und Spalten zu ermitteln.
- Verwenden Sie die Methode head() oder tail(), um die ersten oder letzten paar Zeilen als Beispiel zu erhalten.
- Verwenden Sie die Methoden „info()“, „describe()“ oder „dtypes“, um Informationen über Datentyp, Anzahl, Mittelwert, Standardabweichung, Mindest- und Höchstwerte zu erhalten.
- Verwenden Sie die Methoden count(), min(), max(), sum(), mean() und median(), um spezifische statistische Informationen für Werte zu erhalten.
- Verwenden Sie die Methode loc[], um eine Zeile abzurufen.
- Verwenden Sie die Methode „groupby()“, um die Funktion „GROUP BY“ anzuwenden, um ähnliche Werte in einer Spalte eines DataFrame zu gruppieren.
1. Grundinformation
# 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. Zusammenfassung
# 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()
Anwenden von Funktionen
# 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. Interner Datenabgleich
# NA values for indices that don't overlap s2 = pd.Series([8, -1, 4], index=['A', 'C', 'D']) s + s2
2. Arithmetik Operationen mit Füllmethoden
# Fill values that don't overlap s.add(s2, fill_value=0)
3. Filtern, sortieren und gruppieren nach
Die folgenden Funktionen können zum Filtern, Sortieren und Gruppieren nach Serien und DataFrame verwendet werden.
# 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)
Daten exportieren
Pandas bietet die Möglichkeit, Daten in verschiedenen Formaten zu exportieren oder zu schreiben. Nachfolgend finden Sie einige Beispiele.
# 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()
Fazit zum Pandas-Spickzettel:
Pandas ist eine Open-Source-Bibliothek in Python für die Arbeit mit Datensätzen. Seine Fähigkeit, Daten zu analysieren, zu bereinigen, zu untersuchen und zu manipulieren. Pandas basiert auf Numpy. Es wird mit anderen Programmen wie Matplotlib und verwendet Scikit-Lernen. Es behandelt Themen wie Datenstrukturen, Datenauswahl, Datenimport, Boolesche Indizierung, Löschen von Werten, Sortieren und Datenbereinigung. Wir haben auch ein Pandas-Spickzettel-PDF für den Artikel vorbereitet. Pandas ist eine Bibliothek in Python und die Datenwissenschaft verwendet diese Bibliothek für die Arbeit mit Pandas-Datenrahmen und -Serien. Wir haben in diesem Cheatsheet verschiedene Pandas-Befehle besprochen.
Colab von Spickzettel
Meine Colab-Übungsdatei für Pandas – Pandas Spickzettel – Python für Data Science.ipynb