Zufällige Matrix in Octave

In dieser Lektion möchte ich Ihnen erläutern, wie Sie in Octave eine Matrix mit zufälligen Werten erstellen können.

Lassen Sie uns gleich ein praktisches Beispiel anschauen.

Wenn Sie eine 2x3-Matrix zufällig erstellen möchten, greifen Sie auf die Funktion rand(Zeilen, Spalten) zurück.

>> rand(2,3)

Octave wird dann eine Zufallsmatrix mit Werten zwischen 0 und 1 generieren.

ans =
0.495435 0.651593 0.093860
0.449491 0.788723 0.028347

Beachten Sie bitte, dass die generierten Zahlen jedes Mal unterschiedlich sind und im Intervall (0,1) gleichmäßig verteilt werden.

Möchten Sie ein zufälliges Array mit Werten zwischen 0 und 10 erstellen, können Sie die Funktion rand() einfach mit 10 multiplizieren.

>> rand(2,3)*10
ans =
1.35346 1.04275 0.73193
5.51170 0.39138 8.66168

Für die Erzeugung eines zufälligen Arrays mit ganzen Zahlen, kombinieren Sie die Funktionen rand() und round().

Zum Beispiel können Sie eine 2x3-Matrix mit zufälligen Werten zwischen 0 und 10 so erstellen:

>> round(rand(2,3)*10)
ans =
3 9 10
3 6 9

Eine alternative Herangehensweise wäre die Eingabe von randi(maximaler Wert, Zeilen, Spalten), um zum gleichen Ergebnis zu gelangen.

>> randi(10,2,3)
ans =
1 9 3
2 1 10

Auch in diesem Fall erzeugt Octave eine Ausgabe als Zufallsmatrix, allerdings mit zufälligen Ganzzahlen.

Nun fragen Sie sich sicherlich, wie Octave zufällige Werte generiert. Tatsächlich nutzen die meisten Algorithmen zur Erzeugung von Zufallszahlen sehr lange Listen mit unterschiedlichen Verteilungstypen. Es handelt sich daher streng genommen nicht um echte Zufallszahlen, sondern um pseudorandomisierte Werte. Octave initialisiert den Algorithmus basierend auf der Zeit des Computeruhrtakts. Daher sind die Zahlen immer unterschiedlich. Octave bietet jedoch auch die Möglichkeit, immer die gleiche Sequenz von Zufallszahlen zu verwenden.

 
 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin

Arrays in Octave

Matrizen in Octave

FAQ

Struct und Zellenarray