Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Tildeling af Værdier til Indekserede Elementer | Indeksering og Skæring
Ultimativ NumPy

Stryg for at vise menuen

book
Tildeling af Værdier til Indekserede Elementer

Tildeling af værdier til specifikke elementer eller underarrays er nyttigt til opdatering af data, rettelse af fejl eller anvendelse af betingelser i datasæt. Dette er især nyttigt i opgaver som udskiftning af ugyldige poster, justering af værdier til analyse eller ændring af dele af en array til simuleringer og beregninger.

Først og fremmest kan vi tildele en værdi til et indekseret element i en array. Her er den generelle syntaks for at opnå dette i 1D arrays: array[i] = n, hvor i er et bestemt indeks og n er den værdi, der skal tildeles.

I 2D arrays har vi følgende syntaks: array[i, j] = n, hvor i og j er henholdsvis række og kolonne indekser. For højere-dimensionelle arrays svarer antallet af indekser til antallet af dimensioner.

123456789
import numpy as np array_1d = np.array([1, 4, 6, 2]) # Assigning 10 to the first element of array_1d array_1d[0] = 10 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Assigning 8 to the element in the second row and column of array_2d array_2d[1, 1] = 8 print(array_2d)
copy

Bemærk

Hvis du tildeler en værdi af en højere datatype, som en float, til et element med en lavere datatype, som et heltal, kan værdien blive ændret eller forårsage en fejl. For eksempel vil tildeling af 3.5 til et heltalselement gemme det som 3, hvilket mister decimaldelen.

12345
import numpy as np array_1d = np.array([1, 4, 6, 2]) # Assigning 10.2 to the first element of array_1d array_1d[0] = 10.2 print(array_1d)
copy

Ingen undtagelse blev kastet, men det første element blev tildelt værdien 10 i stedet for 10.2. float-værdien blev konverteret til et heltal, da det er dtype for arrayet.

Billedet nedenfor viser strukturen af employee_data arrayet brugt i opgaven:

Opgave

Swipe to start coding

Du administrerer et datasæt med medarbejderinformation, hvor hver række repræsenterer en medarbejder, og kolonnerne repræsenterer deres løn og præstationsscore. Datasættet er gemt i employee_data arrayet.

  1. Opdater lønnen (første kolonne) for den fjerde medarbejder til 60000.

  2. Brug positiv indeksering til at få adgang til og ændre værdien.

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 2. Kapitel 9

Spørg AI

expand
ChatGPT

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

book
Tildeling af Værdier til Indekserede Elementer

Tildeling af værdier til specifikke elementer eller underarrays er nyttigt til opdatering af data, rettelse af fejl eller anvendelse af betingelser i datasæt. Dette er især nyttigt i opgaver som udskiftning af ugyldige poster, justering af værdier til analyse eller ændring af dele af en array til simuleringer og beregninger.

Først og fremmest kan vi tildele en værdi til et indekseret element i en array. Her er den generelle syntaks for at opnå dette i 1D arrays: array[i] = n, hvor i er et bestemt indeks og n er den værdi, der skal tildeles.

I 2D arrays har vi følgende syntaks: array[i, j] = n, hvor i og j er henholdsvis række og kolonne indekser. For højere-dimensionelle arrays svarer antallet af indekser til antallet af dimensioner.

123456789
import numpy as np array_1d = np.array([1, 4, 6, 2]) # Assigning 10 to the first element of array_1d array_1d[0] = 10 print(array_1d) array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Assigning 8 to the element in the second row and column of array_2d array_2d[1, 1] = 8 print(array_2d)
copy

Bemærk

Hvis du tildeler en værdi af en højere datatype, som en float, til et element med en lavere datatype, som et heltal, kan værdien blive ændret eller forårsage en fejl. For eksempel vil tildeling af 3.5 til et heltalselement gemme det som 3, hvilket mister decimaldelen.

12345
import numpy as np array_1d = np.array([1, 4, 6, 2]) # Assigning 10.2 to the first element of array_1d array_1d[0] = 10.2 print(array_1d)
copy

Ingen undtagelse blev kastet, men det første element blev tildelt værdien 10 i stedet for 10.2. float-værdien blev konverteret til et heltal, da det er dtype for arrayet.

Billedet nedenfor viser strukturen af employee_data arrayet brugt i opgaven:

Opgave

Swipe to start coding

Du administrerer et datasæt med medarbejderinformation, hvor hver række repræsenterer en medarbejder, og kolonnerne repræsenterer deres løn og præstationsscore. Datasættet er gemt i employee_data arrayet.

  1. Opdater lønnen (første kolonne) for den fjerde medarbejder til 60000.

  2. Brug positiv indeksering til at få adgang til og ændre værdien.

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 2. Kapitel 9
Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Vi beklager, at noget gik galt. Hvad skete der?
some-alt