Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Oprettelsesfunktioner til 1D-Arrays | Numpy-Grundlæggende
Ultimate NumPy

bookOprettelsesfunktioner til 1D-Arrays

Udover grundlæggende array-oprettelse ved eksplicit angivelse af elementerne, tillader numpy også automatisk oprettelse af arrays ved hjælp af specielle funktioner. Her er to af de mest almindelige funktioner til oprettelse af udelukkende 1D-arrays:

  • arange();
  • linspace().

arange()

Funktionen numpy.arange() ligner Pythons indbyggede range()-funktion; dog returnerer den et ndarray. Grundlæggende opretter den et array med jævnt fordelte elementer inden for et angivet interval.

For eksempel, hvis det angivne interval er fra 0 til 10 med et skridt på 2, vil det resulterende array være: [0, 2, 4, 6, 8].

Her er de tre vigtigste parametre og deres funktioner:

  1. start:

    • Standardværdi: 0;
    • Repræsenterer første element i arrayet.
  2. stop:

    • Ingen standardværdi;
    • Definerer slutpunktet, som ikke er inkluderet i arrayet.
  3. step:

    • Standardværdi: 1;
    • Angiver inkrementet, der lægges til hvert efterfølgende element.
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)
copy

linspace()

Mens arange() kan arbejde med reelle tal, foretrækkes numpy.linspace() frem for numpy.arange() til dette formål, fordi arange() kan give uventede resultater på grund af præcisionsfejl ved flydende kommatal under beregning af trin. I modsætning hertil genererer linspace() et bestemt antal jævnt fordelte punkter inden for et interval, hvilket sikrer nøjagtighed og konsistens.

Med linspace() bruges parameteren step i stedet for num til at angive antallet af prøver (tal) inden for et givet interval (standard er 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)
copy

Endpoint

Parameteren endpoint bestemmer, om værdien stop er inkluderet. Som standard er den True (inkluderende). Hvis den sættes til False, udelades værdien stop, hvilket reducerer trinbredden en smule.

Her er en sammenligning af array_inclusive og 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)
copy

Når endpoint=True, deles intervallet [0,1][0, 1] i 4 lige store segmenter og inkluderer endepunktet (1), hvilket giver en skridtlængde på (10)/4=0.25(1 - 0) / 4 = 0.25.

Når endpoint=False, deles intervallet [0,1)[0, 1) i 5 lige store segmenter, da endepunktet udelades, hvilket giver en skridtlængde på (10)/5=0.2(1 - 0) / 5 = 0.2.

Opgave

Swipe to start coding

  1. Brug funktionen arange() til at oprette arrayet even_numbers.
  2. Angiv argumenterne for at oprette et array med lige tal fra 2 til 21 eksklusiv.
  3. Brug den relevante funktion til at oprette arrayet samples, som gør det muligt at angive antallet af værdier inden for et givet interval.
  4. Angiv de første tre argumenter for at oprette et array med 10 jævnt fordelte tal mellem 5 og 6.
  5. Sørg for, at 6 ikke er inkluderet i arrayet samples.

Løsning

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 4
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Suggested prompts:

Can you explain the difference between arange() and linspace() in more detail?

What are some common use cases for arange() and linspace()?

How does floating-point precision affect the results of arange()?

close

Awesome!

Completion rate improved to 3.7

bookOprettelsesfunktioner til 1D-Arrays

Stryg for at vise menuen

Udover grundlæggende array-oprettelse ved eksplicit angivelse af elementerne, tillader numpy også automatisk oprettelse af arrays ved hjælp af specielle funktioner. Her er to af de mest almindelige funktioner til oprettelse af udelukkende 1D-arrays:

  • arange();
  • linspace().

arange()

Funktionen numpy.arange() ligner Pythons indbyggede range()-funktion; dog returnerer den et ndarray. Grundlæggende opretter den et array med jævnt fordelte elementer inden for et angivet interval.

For eksempel, hvis det angivne interval er fra 0 til 10 med et skridt på 2, vil det resulterende array være: [0, 2, 4, 6, 8].

Her er de tre vigtigste parametre og deres funktioner:

  1. start:

    • Standardværdi: 0;
    • Repræsenterer første element i arrayet.
  2. stop:

    • Ingen standardværdi;
    • Definerer slutpunktet, som ikke er inkluderet i arrayet.
  3. step:

    • Standardværdi: 1;
    • Angiver inkrementet, der lægges til hvert efterfølgende element.
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)
copy

linspace()

Mens arange() kan arbejde med reelle tal, foretrækkes numpy.linspace() frem for numpy.arange() til dette formål, fordi arange() kan give uventede resultater på grund af præcisionsfejl ved flydende kommatal under beregning af trin. I modsætning hertil genererer linspace() et bestemt antal jævnt fordelte punkter inden for et interval, hvilket sikrer nøjagtighed og konsistens.

Med linspace() bruges parameteren step i stedet for num til at angive antallet af prøver (tal) inden for et givet interval (standard er 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)
copy

Endpoint

Parameteren endpoint bestemmer, om værdien stop er inkluderet. Som standard er den True (inkluderende). Hvis den sættes til False, udelades værdien stop, hvilket reducerer trinbredden en smule.

Her er en sammenligning af array_inclusive og 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)
copy

Når endpoint=True, deles intervallet [0,1][0, 1] i 4 lige store segmenter og inkluderer endepunktet (1), hvilket giver en skridtlængde på (10)/4=0.25(1 - 0) / 4 = 0.25.

Når endpoint=False, deles intervallet [0,1)[0, 1) i 5 lige store segmenter, da endepunktet udelades, hvilket giver en skridtlængde på (10)/5=0.2(1 - 0) / 5 = 0.2.

Opgave

Swipe to start coding

  1. Brug funktionen arange() til at oprette arrayet even_numbers.
  2. Angiv argumenterne for at oprette et array med lige tal fra 2 til 21 eksklusiv.
  3. Brug den relevante funktion til at oprette arrayet samples, som gør det muligt at angive antallet af værdier inden for et givet interval.
  4. Angiv de første tre argumenter for at oprette et array med 10 jævnt fordelte tal mellem 5 og 6.
  5. Sørg for, at 6 ikke er inkluderet i arrayet samples.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 1. Kapitel 4
single

single

some-alt