Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Creatiefuncties voor 1D-Arrays | Numpy Basics
Numpy Basisprincipes
Sectie 1. Hoofdstuk 4
single

single

Creatiefuncties voor 1D-Arrays

Veeg om het menu te tonen

Naast het basis aanmaken van arrays door de elementen expliciet op te geven, maakt numpy het ook mogelijk om arrays automatisch aan te maken met behulp van speciale functies. Hier zijn twee van de meest gebruikte functies voor het aanmaken van uitsluitend 1D-arrays:

  • arange();
  • linspace().

arange()

De functie numpy.arange() lijkt op de ingebouwde range() functie van Python; echter, deze retourneert een ndarray. In essentie maakt het een array met gelijkmatig verdeelde elementen binnen een opgegeven interval.

Als het opgegeven interval bijvoorbeeld loopt van 0 tot 10 met een stapgrootte van 2, dan zou de resulterende array zijn: [0, 2, 4, 6, 8].

Hieronder staan de drie belangrijkste parameters en hun functies:

  1. start:

    • Standaardwaarde: 0;
    • Geeft het eerste element van de array aan.
  2. stop:

    • Geen standaardwaarde;
    • Definieert het eindpunt, dat niet wordt opgenomen in de array.
  3. step:

    • Standaardwaarde: 1;
    • Geeft de toename aan die bij elk volgend element wordt opgeteld.
12345678910
import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)

linspace()

Hoewel arange() kan werken met reële getallen, heeft numpy.linspace() de voorkeur boven numpy.arange() voor dit doel omdat arange() onverwachte resultaten kan opleveren door foutjes in de floating-point precisie bij het berekenen van stappen. Daarentegen genereert linspace() een specifiek aantal gelijkmatig verdeelde punten binnen een interval, wat nauwkeurigheid en consistentie garandeert.

Bij linspace() wordt in plaats van de parameter step de parameter num gebruikt om het aantal waarden (getallen) binnen een gegeven interval te specificeren (standaard is 50).

1234567
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)

Endpoint

De parameter endpoint bepaalt of de stop-waarde wordt meegenomen. Standaard is deze True (inclusief). Door deze op False te zetten wordt de stop-waarde uitgesloten, waardoor de stapgrootte iets kleiner wordt.

Hier volgt een vergelijking tussen array_inclusive en array_exclusive:

1234567
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)

Wanneer endpoint=True, wordt het interval [0,1][0, 1] verdeeld in 4 gelijke segmenten en wordt het eindpunt zelf (1) inbegrepen, wat resulteert in een stapgrootte van (10)/4=0.25(1 - 0) / 4 = 0.25.

Wanneer endpoint=False, wordt het interval [0,1)[0, 1) verdeeld in 5 gelijke segmenten omdat het eindpunt uitgesloten is, wat resulteert in een stapgrootte van (10)/5=0.2(1 - 0) / 5 = 0.2.

Taak

Veeg om te beginnen met coderen

  1. Gebruik de functie arange() om de array even_numbers te maken.
  2. Specificeer de argumenten om een array van even getallen van 2 tot exclusief 21 te creëren.
  3. Gebruik de juiste functie om de array samples te maken, waarmee je het aantal waarden binnen een bepaald interval kunt opgeven.
  4. Specificeer de eerste drie argumenten om een array van 10 gelijkmatig verdeelde getallen tussen 5 en 6 te maken.
  5. Zorg ervoor dat 6 niet is opgenomen in de array samples.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 1. Hoofdstuk 4
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt