Skip to content

Pandas Cheat Sheet

Gedetailleerde gids voor het gebruik van de Pandas-bibliotheek.

Pandas installeren

Commando Beschrijving
conda install pandas De beste manier om pandas te verkrijgen is via conda
python3 -m pip install --upgrade pandas Via PyPI
pip install pandas Standaard pip-installatie

Belangrijke afkortingen en pakketimports

Afkorting Beschrijving
df Elk Pandas DataFrame-object
s Elk Pandas Series-object

Importmethoden

Commando Beschrijving
import pandas as pd Importeer pandas met de alias pd
import numpy as np Importeer numpy met de alias np

Gegevensselectie

Commando Beschrijving
df[col] Retourneert een kolom als een Series op basis van de kolomnaam
df[[col1, col2]] Retourneert meerdere kolommen als een DataFrame
s.iloc[0] Selecteer gegevens op positie
s.loc['index_one'] Selecteer gegevens op index
df.iloc[0,:] Retourneert de eerste rij
df.iloc[0,0] Retourneert het eerste element van de eerste kolom

Gegevens opschonen

Commando Beschrijving
df.columns = ['a','b','c'] Kolommen hernoemen
pd.isnull() Controleer op null-waarden in een DataFrame; retourneert een Boolean-array
pd.notnull() Controleer op niet-null-waarden in een DataFrame; retourneert een Boolean-array
df.dropna() Verwijder alle rijen die null-waarden bevatten
df.dropna(axis=1) Verwijder alle kolommen die null-waarden bevatten
df.dropna(axis=1, thresh=n) Verwijder alle rijen met minder dan n niet-null-waarden
df.fillna(x) Vervang alle null-waarden in een DataFrame door x
s.astype(float) Converteer Series-gegevenstype naar float
s.replace(1, 'one') Vervang alle waarden gelijk aan 1 door ‘one’
s.replace([1,3], ['one', 'three']) Vervang 1 door ‘one’ en 3 door ’three’
df.rename(columns=lambda x: x + 1) Kolomnamen in batch hernoemen
df.rename(columns={'old_name': 'new_name'}) Kolomnamen selectief hernoemen
df.set_index('column_one') Verander de indexkolom
df.rename(index=lambda x: x + 1) Indexen in batch hernoemen

Gegevens importeren

Commando Beschrijving
pd.read_csv(filename) Importeer gegevens uit een CSV-bestand
pd.read_table(filename) Importeer gegevens uit een tekstbestand met scheidingstekens
pd.read_excel(filename) Importeer gegevens uit een Excel-bestand
pd.read_sql(query, connection_object) Importeer gegevens uit een SQL-tabel/database
pd.read_json(json_string) Importeer gegevens uit een JSON-tekenreeks
pd.read_html(url) Extraheer tabellen van een URL, tekenreeks of HTML-bestand
pd.read_clipboard() Haal inhoud van het klembord en geef deze door aan read_table()
pd.DataFrame(dict) Importeer gegevens uit een dictionary (Keys zijn kolomnamen, Values zijn gegevens)

Gegevens exporteren

Commando Beschrijving
df.to_csv(filename) Exporteer gegevens naar een CSV-bestand
df.to_excel(filename) Exporteer gegevens naar een Excel-bestand
df.to_sql(table_name, connection_object) Exporteer gegevens naar een SQL-tabel
df.to_json(filename) Exporteer gegevens naar een tekstbestand in JSON-indeling

Gegevensverwerking: Filter, Sort en GroupBy

Commando Beschrijving
df[df[col] > 0.5] Selecteer rijen waar de waarde in kolom ‘col’ > 0,5 is
df.sort_values(col1) Sorteer gegevens op kolom col1 (standaard oplopend)
df.sort_values(col2, ascending=False) Sorteer gegevens op kolom col2 in aflopende volgorde
df.sort_values([col1, col2], ascending=[True, False]) Sorteer op col1 oplopend, daarna op col2 aflopend
df.groupby(col) Retourneert een GroupBy-object gegroepeerd op kolom ‘col’
df.groupby([col1, col2]) Retourneert een GroupBy-object gegroepeerd op meerdere kolommen
df.groupby(col1)[col2].mean() Retourneert het gemiddelde van kolom col2 voor elke groep in col1
df.pivot_table(index=col1, values=[col2, col3], aggfunc=max) Maak een draaitabel gegroepeerd op col1, waarbij de maximale waarde voor col2 en col3 wordt berekend
df.groupby(col1).agg(np.mean) Retourneert het gemiddelde voor alle kolommen gegroepeerd op col1
df.apply(np.mean) Pas de functie np.mean toe op elke kolom
df.apply(np.max, axis=1) Pas de functie np.max toe op elke rij

Testobjecten maken

Commando Beschrijving
pd.DataFrame(np.random.rand(20,5)) Maak een DataFrame met 20 rijen en 5 kolommen van willekeurige getallen
pd.Series(my_list) Maak een Series van een iterabel object my_list
df.index = pd.date_range('1900/1/30', periods=df.shape[0]) Voeg een datumindex toe

Gegevens bekijken en inspecteren

Commando Beschrijving
df.head(n) Bekijk de eerste n rijen van een DataFrame
df.tail(n) Bekijk de laatste n rijen van een DataFrame
df.shape Bekijk het aantal rijen en kolommen
df.info() Bekijk index, gegevenstypen en geheugeninformatie
df.describe() Bekijk overzichtsstatistieken voor numerieke kolommen
s.value_counts(dropna=False) Bekijk unieke waarden en tellingen voor een Series
df.apply(pd.Series.value_counts) Bekijk unieke waarden en tellingen voor elke kolom in een DataFrame

Gegevens samenvoegen

Commando Beschrijving
df1.append(df2) Voeg rijen van df2 toe aan het einde van df1
pd.concat([df1, df2], axis=1) Voeg kolommen van df2 toe aan het einde van df1
df1.join(df2, on=col1, how='inner') SQL-stijl join tussen df1- en df2-kolommen

Gegevensstatistieken

Commando Beschrijving
df.describe() Bekijk overzichtsstatistieken voor numerieke kolommen
df.mean() Retourneert het gemiddelde van alle kolommen
df.corr() Retourneert de correlatiecoëfficiënt tussen kolommen
df.count() Retourneert het aantal niet-null-waarden in elke kolom
df.max() Retourneert de maximumwaarde van elke kolom
df.min() Retourneert de minimumwaarde van elke kolom
df.median() Retourneert de mediaan van elke kolom
df.std() Retourneert de standaarddeviatie van elke kolom