Alle Irrläufe visualisieren
all_walks
ist eine Liste aus Listen: Jede Unterliste repräsentiert einen einzelnen Irrlauf. Wenn du diese Liste aus Listen in ein NumPy-Array umwandelst, kannst du interessante Diagramme erstellen. matplotlib.pyplot
ist bereits als plt
importiert.
Die verschachtelte for
-Schleife ist ebenfalls bereits kodiert – du brauchst dir darüber also keine Gedanken zu machen. Konzentriere dich zunächst auf den Code, der nach dieser for
-Schleife kommt.
Diese Übung ist Teil des Kurses
Python für Fortgeschrittene
Anleitung zur Übung
- Verwende
np.array()
, umall_walks
in das NumPy-Arraynp_aw
umzuwandeln. - Versuche,
plt.plot()
mitnp_aw
zu nutzen. Füge außerdemplt.show()
ein. Funktioniert es sofort ohne weitere Anpassungen? - Transponiere
np_aw
durch den Aufruf vonnp.transpose()
mitnp_aw
. Nenne das Ergebnisnp_aw_t
. Jetzt stellt jede Zeile innp_all_walks
für die fünf Irrläufe die Position nach einem Wurf dar. - Verwende
plt.plot()
, umnp_aw_t
zu visualisieren; füge auch eineplt.show()
-Anweisung hinzu. Sieht es diesmal besser aus?
Interaktive Übung zum Anfassen
Probieren Sie diese Übung aus, indem Sie diesen Beispielcode ausführen.
# numpy and matplotlib imported, seed set.
# initialize and populate all_walks
all_walks = []
for i in range(5) :
random_walk = [0]
for x in range(100) :
step = random_walk[-1]
dice = np.random.randint(1,7)
if dice <= 2:
step = max(0, step - 1)
elif dice <= 5:
step = step + 1
else:
step = step + np.random.randint(1,7)
random_walk.append(step)
all_walks.append(random_walk)
# Convert all_walks to NumPy array: np_aw
# Plot np_aw and show
# Clear the figure
plt.clf()
# Transpose np_aw: np_aw_t
# Plot np_aw_t and show