Multidimensionel Indeksering
Nu hvor du kan tilgå elementer i 1D-arrays, er det tid til at lære om indeksering i højere-dimensionelle arrays.
Indeksering af 2D-arrays
Dette er et 2x3 array, hvilket betyder, at det består af 2 1D-arrays langs akse 0, og hver af disse 1D-arrays har 3 elementer langs akse 1.
Billederne nedenfor vil tydeliggøre positiv og negativ indeksering i 2D-arrays (array-værdier vises i sort, og indekser vises i grøn for positive indekser og rød for negative indekser):
Adgang til elementer i 2D-arrays
I 1D-arrays tilgik vi elementer ved at angive elementets indeks i firkantede parenteser. Hvis vi gør det samme i 2D-arrays, får vi et 1D-array ved det angivne indeks, hvilket kan være præcis det, vi har brug for.
Hvis vi derimod ønsker at tilgå et bestemt element i et indvendigt 1D-array, skal vi angive indekset for 1D-arrayet (langs akse 0) og indekset for dets element (langs akse 1), f.eks. array[0, 1]. Vi kunne også skrive array[0][1] som med Python list, men dette er mindre effektivt, da søgningen udføres to gange for hvert indeks i stedet for én gang.
Hvis et angivet indeks er uden for grænserne, kastes en IndexError, så vær opmærksom på dette.
12345678import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Accessing the first element (1D array) with positive index print(array_2d[0]) # Accessing the second element of the first 1D array with positive index print(array_2d[0, 1]) # Accessing the last element of the last 1D array with negative index print(array_2d[-1, -1])
Billedet nedenfor viser strukturen af stock_prices arrayet, der bruges i opgaven:
Swipe to start coding
stock_prices indeholder simulerede aktiekurser over fem dage for fem forskellige virksomheder. Hver række svarer til en bestemt virksomhed, og hver kolonne svarer til en bestemt dag. Derfor repræsenterer hvert element i matricen lukkekursen for en bestemt virksomheds aktie på en given dag.
- Hent alle aktiekurserne for den første virksomhed over fem dage ved hjælp af positiv indeksering.
- Hent aktiekursen for den tredje virksomhed på den anden dag ved hjælp af positiv indeksering.
- Hent aktiekursen for den sidste virksomhed på den sidste dag ved hjælp af negativ indeksering.
Løsning
Tak for dine kommentarer!
single
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Can you explain the difference between positive and negative indexing in 2D arrays?
How do I access a specific row or column in a 2D array?
Why is using array[0, 1] more efficient than array[0][1]?
Awesome!
Completion rate improved to 3.7
Multidimensionel Indeksering
Stryg for at vise menuen
Nu hvor du kan tilgå elementer i 1D-arrays, er det tid til at lære om indeksering i højere-dimensionelle arrays.
Indeksering af 2D-arrays
Dette er et 2x3 array, hvilket betyder, at det består af 2 1D-arrays langs akse 0, og hver af disse 1D-arrays har 3 elementer langs akse 1.
Billederne nedenfor vil tydeliggøre positiv og negativ indeksering i 2D-arrays (array-værdier vises i sort, og indekser vises i grøn for positive indekser og rød for negative indekser):
Adgang til elementer i 2D-arrays
I 1D-arrays tilgik vi elementer ved at angive elementets indeks i firkantede parenteser. Hvis vi gør det samme i 2D-arrays, får vi et 1D-array ved det angivne indeks, hvilket kan være præcis det, vi har brug for.
Hvis vi derimod ønsker at tilgå et bestemt element i et indvendigt 1D-array, skal vi angive indekset for 1D-arrayet (langs akse 0) og indekset for dets element (langs akse 1), f.eks. array[0, 1]. Vi kunne også skrive array[0][1] som med Python list, men dette er mindre effektivt, da søgningen udføres to gange for hvert indeks i stedet for én gang.
Hvis et angivet indeks er uden for grænserne, kastes en IndexError, så vær opmærksom på dette.
12345678import numpy as np array_2d = np.array([[1, 2, 3], [4, 5, 6]]) # Accessing the first element (1D array) with positive index print(array_2d[0]) # Accessing the second element of the first 1D array with positive index print(array_2d[0, 1]) # Accessing the last element of the last 1D array with negative index print(array_2d[-1, -1])
Billedet nedenfor viser strukturen af stock_prices arrayet, der bruges i opgaven:
Swipe to start coding
stock_prices indeholder simulerede aktiekurser over fem dage for fem forskellige virksomheder. Hver række svarer til en bestemt virksomhed, og hver kolonne svarer til en bestemt dag. Derfor repræsenterer hvert element i matricen lukkekursen for en bestemt virksomheds aktie på en given dag.
- Hent alle aktiekurserne for den første virksomhed over fem dage ved hjælp af positiv indeksering.
- Hent aktiekursen for den tredje virksomhed på den anden dag ved hjælp af positiv indeksering.
- Hent aktiekursen for den sidste virksomhed på den sidste dag ved hjælp af negativ indeksering.
Løsning
Tak for dine kommentarer!
single