Python

Python Menu

Was ist Pandas?

  • Pandas ist eine Python-Bibliothek, die für die Arbeit mit Datensätzen verwendet wird.
  • Sie verfügt über Funktionen zum Analysieren, Bereinigen, Erkunden und Manipulieren von Daten.
  • Der Name "Pandas" bezieht sich sowohl auf "Panel Data", als auch auf "Python Data Analysis" und wurde von Wes McKinney im Jahr 2008 entwickelt.

Warum Pandas?

  • Pandas ermöglicht es uns, große Daten zu analysieren und Schlussfolgerungen auf Basis statistischer Theorien zu ziehen.
  • Pandas kann unordentliche Datensätze bereinigen und sie lesbar und relevant machen.
  • Relevante Daten sind in der Datenwissenschaft sehr wichtig.

Was kann Pandas tun?

Pandas gibt uns Antworten über die Daten. Zum Beispiel:

  • Gibt es eine Korrelation zwischen zwei oder mehreren Spalten?
  • Was ist der Durchschnittswert?
  • Max-Wert?
  • Minimaler Wert?

Pandas sind auch in der Lage, Zeilen zu löschen, die nicht relevant sind oder falsche Werte enthalten, wie leere oder NULL-Werte. Dies wird als Bereinigung der Daten bezeichnet.

Installation

Wenn du Python und PIP bereits auf einem System installiert hast, dann ist die Installation von Pandas sehr einfach.

Installiere es mit dem folgenden Befehl:

C:\Users\Dein Name>pip install pandas

Wenn dieser Befehl fehlschlägt, dann verwende eine Python-Distribution, die Pandas bereits installiert hat, wie z.B. Anaconda, Spyder etc.

Pandas importieren

Sobald Pandas installiert ist, importiere es in deine Anwendungen, indem du das Schlüsselwort import hinzufügst:

import pandas

Beispiel:

import pandas
meindatensatz = { 'auto': ["BMW", "Volvo", "Ford"], 'passings': [3, 7, 2] }
meinevar = pandas.DataFrame(meindatensatz)
print(meinevar)

Pandas als pd

Pandas wird normalerweise unter dem Alias pd importiert.

Lege beim Import einen Alias mit dem Schlüsselwort as an:

import pandas as pd

Jetzt kann das Pandas-Paket als pd anstelle von pandas bezeichnet werden.

Beispiel:

import pandas as pd
meindatensatz = { 'auto': ["BMW", "Volvo", "Ford"], 'passings': [3, 7, 2] }
meinevar = pd.DataFrame(meindatensatz)
print(meinevar)

Was ist eine Serie?

Eine Pandas-Serie ist wie eine Spalte in einer Tabelle.

Sie ist ein eindimensionales Array, das Daten beliebigen Typs enthält.

Beispiel: (Erstellen einer einfachen Pandas-Serie aus einer Liste)

import pandas as pd
a = [1, 7, 2] meinevar = pd.Series(a) print(meinevar)

Labels

Wenn nichts anderes spezifiziert ist, werden die Werte mit ihrer Indexnummer beschriftet. Erster Wert hat Index 0, zweiter Wert hat Index 1 usw.

Diese Beschriftung kann verwendet werden, um auf einen bestimmten Wert zuzugreifen.

Beispiel:

import pandas as pd
a = [1, 7, 2] meinevar = pd.Series(a) print(meinevar[0])

Labels erstellen

Mit dem Argument index lassen sich eigene Labels benennen.

Beispiel (Eigene Labels) erstellen:

import pandas as pd
a = [1, 7, 2] meinevar = pd.Series(a, index = ["x", "y", "z"]) print(meinevar)

Wenn Sie Labels erstellt haben, können Sie auf ein Element zugreifen, indem Sie sich auf das Label beziehen.

Beispiel:

import pandas as pd
a = [1, 7, 2] meinevar = pd.Series(a, index = ["x", "y", "z"]) print(meinevar["y"])

Pandas DataFrames

Mit DataFrames kannst du tabellarische Daten in Zeilen mit Beobachtungen und Spalten mit Variablen speichern und manipulieren.

Es gibt mehrere Möglichkeiten, einen DataFrame zu erstellen. Eine Möglichkeit ist die Verwendung eines Wörterbuchs. Zum Beispiel:

dict = {"land": ["Brasilien", "Russland", "Indien", "China", "Südafrika"], "hauptstadt": ["Brasilia", "Moskau", "Neu Dehli", "Peking", "Pretoria"], "ort": [8.516, 17.10, 3.286, 9.597, 1.221], "einwohnerzahl": [200.4, 143.5, 1252, 1357, 52.98] }
import pandas as pd brics = pd.DataFrame(dict) print(brics)

Wie du mit dem neuen brics DataFrame sehen kannst, hat Pandas für jedes Land einen Schlüssel mit den Zahlenwerten 0 bis 4 vergeben. Wenn du andere Indexwerte haben möchtest, z.B. den zweistelligen Ländercode, kannst du auch das einfach machen.

dict = {"land": ["Brasilien", "Russland", "Indien", "China", "Südafrika"], "hauptstadt": ["Brasilia", "Moskau", "Neu Dehli", "Peking", "Pretoria"], "ort": [8.516, 17.10, 3.286, 9.597, 1.221], "einwohnerzahl": [200.4, 143.5, 1252, 1357, 52.98] }
import pandas as pd brics = pd.DataFrame(dict)
# Index für brics einstellen brics.index = ["BR", "RU", "IN", "CH", "SA"]
print(brics)

Eine andere Möglichkeit, einen DataFrame zu erstellen, ist das Importieren einer csv-Datei mit Pandas. Nun ist die csv autos.csv gespeichert und kann mit pd.read_csv importiert werden:

# importiert pandas als pd 
import pandas as pd

# importiert die autos.csv-Daten: autos
autos = pd.read_csv('autos.csv')

# Autos ausgeben
print(autos)

Indizierung von DataFrames

Es gibt mehrere Möglichkeiten, einen Pandas DataFrame zu indizieren. Eine der einfachsten Möglichkeiten ist die Verwendung der eckigen Klammer-Notation.

Im folgenden Beispiel können eckige Klammern verwendet werden, um eine Spalte des DataFrames "Autos" auszuwählen. Du kannst entweder eine einzelne Klammer oder eine doppelte Klammer verwenden. Die einfache Klammer wird eine Pandas-Reihe ausgeben, während eine doppelte Klammer einen Pandas-DataFrame ausgeben wird.

dict = {"land": ["USA", "Australien", "Japan", "Indien", "Russland", "Marokko", "Ägypten"], "autos_pro_hauptstadt": [809, 731, 588, 18, 200, 70, 45], "fährt_rechts": [True, False, False, False, False, True, True] }
import pandas as pd brics = pd.DataFrame(dict)
brics.index = ["US", "AUS", "JAP", "IN", "RU", "MOR", "EG"]
# Länderspalte als Pandas-Serie ausgeben print(brics['autos_pro_hauptstadt'])
# Ausgeben der Länderspalte als Pandas DataFrame print(brics[['autos_pro_hauptstadt']])
# DataFrame mit den Spalten land und fährt_rechts ausgeben print(brics[['autos_pro_hauptstadt', 'land']])

Eckige Klammern können auch verwendet werden, um auf Beobachtungen (Zeilen) aus einem DataFrame zuzugreifen. Zum Beispiel:

dict = {"land": ["USA", "Australien", "Japan", "Indien", "Russland", "Marokko", "Ägypten"], "autos_pro_hauptstadt": [809, 731, 588, 18, 200, 70, 45], "fährt_rechts": [True, False, False, False, False, True, True] }
import pandas as pd brics = pd.DataFrame(dict)
brics.index = ["US", "AUS", "JAP", "IN", "RU", "MOR", "EG"]
# Die ersten 4 Beobachtungen ausgeben print(brics[0:4])
# Fünfte und sechste Beobachtung ausgeben print(brics[4:6])

Du kannst auch loc und iloc verwenden, um so gut wie jede Datenauswahloperation durchzuführen. loc ist bezeichnungsbasiert, das heißt, du musst Zeilen und Spalten basierend auf ihren Zeilen- und Spaltenbezeichnungen angeben. iloc ist ganzzahlindexbasiert, d. h. du musst Zeilen und Spalten anhand ihres ganzzahligen Indexes angeben.

dict = {"land": ["USA", "Australien", "Japan", "Indien", "Russland", "Marokko", "Ägypten"], "autos_pro_hauptstadt": [809, 731, 588, 18, 200, 70, 45], "fährt_rechts": [True, False, False, False, False, True, True] }
import pandas as pd brics = pd.DataFrame(dict)
brics.index = ["US", "AUS", "JAP", "IN", "RU", "MOR", "EG"]
# Beobachtung für Japan ausgeben print(brics.iloc[2])
# Beobachtungen für Australien und Ägypten ausgeben print(brics.loc[['AUS', 'EG']])

Einführung

Python Basics

Python Advance

Data Science Python Tutorials

Python Eingebaute Funktionen