Skip to content

Pandas Lathund (Cheat Sheet)

Detaljerad guide för att använda Pandas-biblioteket.

Installera Pandas

Kommando Beskrivning
conda install pandas Det bästa sättet att skaffa pandas är via conda
python3 -m pip install --upgrade pandas Via PyPI
pip install pandas Standard pip-installation

Viktiga förkortningar och paketimporter

Förkortning Beskrivning
df Valfritt Pandas DataFrame-objekt
s Valfritt Pandas Series-objekt

Importmetoder

Kommando Beskrivning
import pandas as pd Importera pandas med aliaset pd
import numpy as np Importera numpy med aliaset np

Dataval (Data Selection)

Kommando Beskrivning
df[col] Returnerar en kolumn som en Series baserat på kolumnnamn
df[[col1, col2]] Returnerar flera kolumner som en DataFrame
s.iloc[0] Välj data efter position
s.loc['index_one'] Välj data efter index
df.iloc[0,:] Returnerar den första raden
df.iloc[0,0] Returnerar det första elementet i den första kolumnen

Datarengöring (Data Cleaning)

Kommando Beskrivning
df.columns = ['a','b','c'] Byt namn på kolumner
pd.isnull() Kontrollera om det finns null-värden i en DataFrame; returnerar en Boolean-array
pd.notnull() Kontrollera om det finns icke-null-värden i en DataFrame; returnerar en Boolean-array
df.dropna() Ta bort alla rader som innehåller null-värden
df.dropna(axis=1) Ta bort alla kolumner som innehåller null-värden
df.dropna(axis=1, thresh=n) Ta bort alla rader med färre än n icke-null-värden
df.fillna(x) Ersätt alla null-värden i en DataFrame med x
s.astype(float) Konvertera Series-datatyp till float
s.replace(1, 'one') Ersätt alla värden som är lika med 1 med ‘one’
s.replace([1,3], ['one', 'three']) Ersätt 1 med ‘one’ och 3 med ’three’
df.rename(columns=lambda x: x + 1) Massändra kolumnnamn
df.rename(columns={'old_name': 'new_name'}) Ändra specifika kolumnnamn
df.set_index('column_one') Ändra indexkolumn
df.rename(index=lambda x: x + 1) Massändra indexnamn

Importera data

Kommando Beskrivning
pd.read_csv(filename) Importera data från en CSV-fil
pd.read_table(filename) Importera data från en textfil med avgränsare
pd.read_excel(filename) Importera data från en Excel-fil
pd.read_sql(query, connection_object) Importera data från en SQL-tabell/-databas
pd.read_json(json_string) Importera data från en JSON-sträng
pd.read_html(url) Extrahera tabeller från en URL, sträng eller HTML-fil
pd.read_clipboard() Hämta innehåll från urklipp och skicka till read_table()
pd.DataFrame(dict) Importera data från ett dictionary-objekt (Keys är kolumnnamn, Values är data)

Exportera data

Kommando Beskrivning
df.to_csv(filename) Exportera data till en CSV-fil
df.to_excel(filename) Exportera data till en Excel-fil
df.to_sql(table_name, connection_object) Exporteer data till en SQL-tabell
df.to_json(filename) Exportera data till en textfil i JSON-format

Databearbetning: Filter, Sort och GroupBy

Kommando Beskrivning
df[df[col] > 0.5] Välj rader där värdet i kolumnen ‘col’ är > 0,5
df.sort_values(col1) Sortera data efter kolumn col1 (stigande som standard)
df.sort_values(col2, ascending=False) Sortera data efter kolumn col2 i fallande ordning
df.sort_values([col1, col2], ascending=[True, False]) Sortera efter col1 stigande, sedan col2 fallande
df.groupby(col) Returnerar ett GroupBy-objekt grupperat efter kolumn ‘col’
df.groupby([col1, col2]) Returnerar ett GroupBy-objekt grupperat efter flera kolumner
df.groupby(col1)[col2].mean() Returnerar medelvärdet för kolumn col2 för varje grupp i col1
df.pivot_table(index=col1, values=[col2, col3], aggfunc=max) Skapa en pivottabell grupperad efter col1, som beräknar max för col2 och col3
df.groupby(col1).agg(np.mean) Returnerar medelvärdet för alla kolumner grupperade efter col1
df.apply(np.mean) Tillämpa funktionen np.mean på varje kolumn
df.apply(np.max, axis=1) Tillämpa funktionen np.max på varje rad

Skapa testobjekt

Kommando Beskrivning
pd.DataFrame(np.random.rand(20,5)) Skapa en DataFrame med 20 rader och 5 kolumner med slumpmässiga tal
pd.Series(my_list) Skapa en Series från ett itererbart objekt my_list
df.index = pd.date_range('1900/1/30', periods=df.shape[0]) Lägg till ett datumindex

Visa och granska data

Kommando Beskrivning
df.head(n) Visa de första n raderna i en DataFrame
df.tail(n) Visa de sista n raderna i en DataFrame
df.shape Visa antal rader och kolumner
df.info() Visa index, datatyper och minnesinformation
df.describe() Visa sammanfattande statistik för numeriska kolumner
s.value_counts(dropna=False) Visa unika värden och antal för en Series
df.apply(pd.Series.value_counts) Visa unika värden och antal för varje kolumn i en DataFrame

Sammanfoga data (Data Merging)

Kommando Beskrivning
df1.append(df2) Lägg till rader från df2 i slutet av df1
pd.concat([df1, df2], axis=1) Lägg till kolumner från df2 i slutet av df1
df1.join(df2, on=col1, how='inner') SQL-liknande join mellan df1- och df2-kolumner

Datastatistik

Kommando Beskrivning
df.describe() Visa sammanfattande statistik för numeriska kolumner
df.mean() Returnerar medelvärdet för alla kolumner
df.corr() Returnerar korrelationskoefficienten mellan kolumner
df.count() Returnerar antalet icke-null-värden i varje kolumn
df.max() Returnerar maxvärdet för varje kolumn
df.min() Returnerar minsta värdet för varje kolumn
df.median() Returnerar medianen för varje kolumn
df.std() Returnerar standardavvikelsen för varje kolumn