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.
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)
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 som3
, hvilket mister decimaldelen.
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)
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:
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.
-
Opdater lønnen (første kolonne) for den fjerde medarbejder til
60000
. -
Brug positiv indeksering til at få adgang til og ændre værdien.
Løsning
Tak for dine kommentarer!