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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert