LoslegenKostenlos loslegen

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

Kurs anzeigen

Anleitung zur Übung

  • Vervollständige den ersten Aufruf von np.loadtxt(), indem du file als erstes Argument übergibst.
  • Führe print(data[0]) aus, um das erste Element von data auszugeben.
  • Schließe den zweiten Aufruf von np.loadtxt() ab. Die Datei (file), die du importierst, ist tabulatorgetrennt, der Datentyp ist float, und du willst die erste Zeile überspringen.
  • Gib das 10. Element von data_float aus, indem du den print()-Befehl fertigstellst. Lass dich von dem vorherigen print()-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()
Code bearbeiten und ausführen