Einführung
In diesem Lab werden wir untersuchen, wie man den nullable integer-Datentyp in pandas verwendet, was eine effiziente Methode ist, um ganzzahlige Daten zu verarbeiten, die möglicherweise fehlende Werte enthalten. Wir werden lernen, wie man Arrays mit diesem Datentyp konstruiert, Operationen ausführt und fehlende Werte effektiv behandelt.
Tipps für die VM
Nachdem der VM-Start abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.
Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Operationen kann aufgrund von Einschränkungen in Jupyter Notebook nicht automatisiert werden.
Wenn Sie bei der Lernphase Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.
Konstruktion von nullable Integer-Arrays
Pandas bietet die IntegerArray-Klasse zum Erstellen von Arrays mit nullable Ganzzahlen. Lassen Sie uns beginnen, ein IntegerArray zu erstellen.
## Importieren der erforderlichen Bibliotheken
import pandas as pd
import numpy as np
## Erstellen eines IntegerArrays mit fehlenden Werten
arr = pd.array([1, 2, None], dtype=pd.Int64Dtype())
## Ausgabe: <IntegerArray>
## [1, 2, <NA>]
## Länge: 3, dtype: Int64
Sie können auch den String-Alias "Int64" verwenden, um den Datentyp anzugeben, wenn das Array erstellt wird. Alle NA-ähnlichen Werte werden durch pandas.NA ersetzt.
## Erstellen eines IntegerArrays mit dem String-Alias "Int64"
arr = pd.array([1, 2, np.nan], dtype="Int64")
## Ausgabe: <IntegerArray>
## [1, 2, <NA>]
## Länge: 3, dtype: Int64
Speichern des IntegerArrays in einem DataFrame oder einer Series
Sobald Sie ein IntegerArray erstellt haben, können Sie es in einem DataFrame oder einer Series speichern. Lassen Sie uns eine Series aus dem von uns erstellten IntegerArray erstellen.
## Erstellen einer Series aus dem IntegerArray
series = pd.Series(arr)
Ausführen von Operationen mit nullable Integer-Arrays
Sie können verschiedene Operationen mit nullable Integer-Arrays durchführen, wie arithmetische Operationen, Vergleiche und Slicing.
## Erstellen einer Series mit nullable Integer-Typ
s = pd.Series([1, 2, None], dtype="Int64")
## Ausführen einer arithmetischen Operation
s_plus_one = s + 1 ## addiert 1 zu jedem Element in der Series
## Ausführen eines Vergleichs
vergleich = s == 1 ## prüft, ob jedes Element in der Series gleich 1 ist
## Ausführen eines Slicing-Operators
geschnitten = s.iloc[1:3] ## wählt das zweite und dritte Element in der Series aus
Umgang mit fehlenden Werten mit pandas.NA
Die IntegerArray-Klasse verwendet pandas.NA als skalaren fehlenden Wert. Wenn Sie ein einzelnes fehlendes Element slicen, wird pandas.NA zurückgegeben.
## Erstellen eines IntegerArrays mit einem fehlenden Wert
a = pd.array([1, None], dtype="Int64")
## Slicen des zweiten Elements, das ein fehlender Wert ist
fehlender_wert = a[1]
## Ausgabe: <NA>
Zusammenfassung
In diesem Lab wurde gezeigt, wie Sie mit nullable Ganzzahl-Datentypen in pandas arbeiten, einschließlich der Erstellung von Arrays, des Speicherns in einem DataFrame oder einer Series, der Ausführung von Operationen und des Umgangs mit fehlenden Werten. Durch die Verwendung des nullable Ganzzahl-Datentyps können Sie integer-Daten mit fehlenden Werten effizienter verarbeiten.