Numpy: der unterschied zwischen np.linspace und np.arange
Wenn es darum geht, eine Folge von Werten zu erstellen, sind Linspace und Arange zwei häufig verwendete NumPy-Funktionen.
Hier ist der subtile Unterschied zwischen den beiden Funktionen:
- Mit Linspace können Sie die Anzahl der Schritte angeben
- Mit arange können Sie die Größe der Schritte festlegen
Die folgenden Beispiele zeigen, wie die einzelnen Funktionen in der Praxis verwendet werden.
Beispiel 1: Verwendung von np.linspace
Die Funktion np.linspace() verwendet die folgende grundlegende Syntax:
np.linspace(start, stop, num, …)
Gold:
- start : Der Startwert der Sequenz
- stop : Der Endwert der Sequenz
- num : die Anzahl der zu generierenden Werte
Der folgende Code zeigt, wie man mit np.linspace() 11 gleichmäßig verteilte Werte zwischen 0 und 20 erstellt:
import numpy as np
#create sequence of 11 evenly spaced values between 0 and 20
n.p. linspace (0, 20, 11)
array([ 0., 2., 4., 6., 8., 10., 12., 14., 16., 18., 20.])
Das Ergebnis ist ein Array aus 11 gleichmäßig verteilten Werten zwischen 0 und 20.
Mit dieser Methode ermittelt np.linspace() automatisch den Abstand zwischen Werten.
Beispiel 2: Verwendung von np.arange
Die Funktion np.arange() verwendet die folgende grundlegende Syntax:
np.arange(start, stop, step, …)
Gold:
- start : Der Startwert der Sequenz
- stop : Der Endwert der Sequenz
- Schritt : Der Abstand zwischen Werten
Der folgende Code zeigt, wie man mit np.arange() eine Folge von Werten zwischen 0 und 20 erstellt, wobei der Abstand zwischen den einzelnen Werten 2 beträgt:
import numpy as np
#create sequence of values between 0 and 20 where spacing is 2
n.p. arange (0, 20, 2)
array([ 0, 2, 4, 6, 8, 10, 12, 14, 16, 18])
Das Ergebnis ist eine Folge von Werten zwischen 0 und 20, wobei der Abstand zwischen den einzelnen Werten 2 beträgt.
Mit dieser Methode ermittelt np.arange() automatisch die Anzahl der zu generierenden Werte.
Wenn wir eine andere Schrittgröße verwenden (z. B. 4), passt np.arange() automatisch die Gesamtzahl der generierten Werte an:
import numpy as np
#create sequence of values between 0 and 20 where spacing is 4
n.p. arange (0, 20, 4)
array([ 0, 4, 8, 12, 16])
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere gängige Vorgänge in Python ausführen:
So füllen Sie ein NumPy-Array mit Werten
So ersetzen Sie Elemente in einem NumPy-Array
So zählen Sie eindeutige Werte im NumPy-Array