Tilordne Verdier til Indekserte Elementer
Å tilordne verdier til spesifikke elementer eller underarrayer er nyttig for å oppdatere data, rette feil eller anvende betingelser i datasett. Dette er spesielt nyttig i oppgaver som å erstatte ugyldige oppføringer, justere verdier for analyse, eller modifisere deler av en matrise for simuleringer og beregninger.
Først og fremst kan vi tilordne en verdi til et indeksert element i en matrise. Her er den generelle syntaksen for å oppnå dette i 1D-arrayer: array[i] = n
, hvor i
er en bestemt indeks og n
er verdien som skal tilordnes.
I 2D-arrayer har vi følgende syntaks: array[i, j] = n
, hvor i
og j
er henholdsvis rad- og kolonneindeksene. For høyere-dimensjonale arrayer tilsvarer antall indekser antall dimensjoner.
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)
Merk
Hvis du tilordner en verdi av en høyere datatyp, som en flyttall, til et element med en lavere datatyp, som et heltall, kan verdien bli endret eller forårsake en feil. For eksempel, å tilordne
3.5
til et heltallselement vil lagre det som3
, og miste desimaldelen.
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 unntak ble kastet, men det første elementet ble tildelt verdien 10
i stedet for 10.2
. float
-verdien ble konvertert til et heltall siden det er dtype
for arrayet.
Bildet nedenfor viser strukturen til employee_data
-arrayet som brukes i oppgaven:
Swipe to start coding
Du administrerer et datasett med ansattinformasjon, hvor hver rad representerer en ansatt, og kolonnene representerer deres lønn og prestasjonspoeng. Datasettet er lagret i employee_data
-arrayet.
-
Oppdater lønnen (første kolonne) til fjerde ansatt til
60000
. -
Bruk positiv indeksering for å få tilgang til og endre verdien.
Løsning
Takk for tilbakemeldingene dine!