Numpy: het verschil tussen np.linspace en np.arange
Als het gaat om het maken van een reeks waarden, zijn linspace en arange twee veelgebruikte NumPy-functies.
Hier is het subtiele verschil tussen de twee functies:
- Met linspace kunt u het aantal stappen specificeren
- Met arange kunt u de grootte van de stappen opgeven
De volgende voorbeelden laten zien hoe u elke functie in de praktijk kunt gebruiken.
Voorbeeld 1: Hoe np.linspace te gebruiken
De functie np.linspace() gebruikt de volgende basissyntaxis:
np.linspace(start, stop, num, …)
Goud:
- start : de startwaarde van de reeks
- stop : de eindwaarde van de reeks
- num : het aantal waarden dat moet worden gegenereerd
De volgende code laat zien hoe je np.linspace() gebruikt om 11 gelijkmatig verdeelde waarden tussen 0 en 20 te maken:
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.])
Het resultaat is een array van 11 gelijkmatig verdeelde waarden tussen 0 en 20.
Met deze methode bepaalt np.linspace() automatisch de afstand tussen waarden.
Voorbeeld 2: Hoe np.arange te gebruiken
De functie np.arange() gebruikt de volgende basissyntaxis:
np.arange(start, stop, stap, …)
Goud:
- start : de startwaarde van de reeks
- stop : de eindwaarde van de reeks
- step : De afstand tussen waarden
De volgende code laat zien hoe u np.arange() gebruikt om een reeks waarden tussen 0 en 20 te maken, waarbij de afstand tussen elke waarde 2 is:
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])
Het resultaat is een reeks waarden tussen 0 en 20, waarbij de afstand tussen elke waarde 2 is.
Met behulp van deze methode bepaalt np.arange() automatisch het aantal te genereren waarden.
Als we een andere stapgrootte gebruiken (zoals 4), dan zal np.arange() automatisch het totale aantal gegenereerde waarden aanpassen:
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])
Aanvullende bronnen
In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in Python uitvoert:
Hoe een NumPy-array met waarden te vullen
Hoe elementen in een NumPy-array te vervangen
Hoe unieke waarden in de NumPy-array te tellen