Verschiedene Datentypen importieren
Die Datei seaslug.txt
- hat einen Textkopf, der aus Strings besteht
- ist tabulatorgetrennt.
Diese Daten enthält den Prozentsatz der Meeresschneckenlarven, die sich in einem bestimmten Zeitraum metamorphisiert haben. Lies hier mehr dazu.
Wenn du versuchen würdest, die Datei in ihrer jetzigen Form mit
np.loadtxt()
zu importieren, würde Python dir aufgrund der Kopfzeile einen ValueError
anzeigen und dir mitteilen,
dass eine Umwandlung von String zu Float nicht möglich war (could not convert string to float
). Es gibt
zwei Möglichkeiten, damit umzugehen: Erstens kannst du das Datentyp-
Argument dtype
gleich str
(für String) setzen.
Alternativ kannst du die erste Zeile, wie wir schon gesehen haben, auch
mit dem Argument skiprows
überspringen.
Diese Übung ist Teil des Kurses
Einführung in das Importieren von Daten in Python
Anleitung zur Übung
- Vervollständige den ersten Aufruf von
np.loadtxt()
, indem dufile
als erstes Argument übergibst. - Führe
print(data[0])
aus, um das erste Element vondata
auszugeben. - Schließe den zweiten Aufruf von
np.loadtxt()
ab. Die Datei (file
), die du importierst, ist tabulatorgetrennt, der Datentyp istfloat
, und du willst die erste Zeile überspringen. - Gib das 10. Element von
data_float
aus, indem du denprint()
-Befehl fertigstellst. Lass dich von dem vorherigenprint()
-Aufruf leiten. - Führe den Rest des Codes aus, um die Daten zu visualisieren.
Interaktive Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
# Assign filename: file
file = 'seaslug.txt'
# Import file: data
data = np.loadtxt(____, delimiter='\t', dtype=str)
# Print the first element of data
print(data[0])
# Import file as floats and skip the first row: data_float
data_float = np.loadtxt(____, delimiter='____', dtype=____, skiprows=____)
# Print the 10th element of data_float
print(____)
# Plot a scatterplot of the data
plt.scatter(data_float[:, 0], data_float[:, 1])
plt.xlabel('time (min.)')
plt.ylabel('percentage of larvae')
plt.show()