Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Multidimensional Indeksering | Indeksering og Slicing
Ultimate NumPy

Sveip for å vise menyen

book
Multidimensional Indeksering

Nå som du kan få tilgang til elementer i 1D-arrays, er det på tide å lære om indeksering i høyere-dimensjonale arrays.

2D Arrays Indeksering

Dette er en 2x3 matrise, som betyr at den består av 2 1D-arrayer langs akse 0, og hver av disse 1D-arrayene har 3 elementer langs akse 1.

Bildene nedenfor vil klargjøre positiv og negativ indeksering i 2D-arrayer (arrayverdier vises i svart, og indekser vises i grønn for positive indekser og rød for negative indekser):

Tilgang til elementer i 2D-arrays

I 1D-arrays fikk vi tilgang til elementer ved å spesifisere indeksen til elementet i firkantede parenteser. Hvis vi gjør det samme i 2D-arrays, henter vi en 1D-array på den angitte indeksen, noe som kan være akkurat det vi trenger.

Men hvis vi ønsker å hente et bestemt element i en indre 1D-array, bør vi spesifisere indeksen til 1D-arrayen (langs akse 0) og indeksen til elementet (langs akse 1), f.eks. array[0, 1]. Vi kunne også skrive array[0][1] som vi gjør med Python list, men dette er mindre effektivt siden det utfører søket to ganger for hver indeks i stedet for én gang.

Merk

Hvis en angitt indeks er utenfor grensene, kastes en IndexError, så vær oppmerksom på det.

12345678
import 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])
copy

Bildet nedenfor viser strukturen til stock_prices-arrayen brukt i oppgaven:

Oppgave

Swipe to start coding

stock_prices inneholder simulerte aksjepriser over fem dager for fem forskjellige selskaper. Hver rad tilsvarer et bestemt selskap, og hver kolonne tilsvarer en bestemt dag. Følgelig representerer hvert element i matrisen sluttkursen på et bestemt selskaps aksje på en gitt dag.

  1. Hent alle aksjeprisene til det første selskapet over fem dager ved å bruke positiv indeksering.

  2. Hent aksjeprisen til det tredje selskapet på den andre dagen ved å bruke positiv indeksering.

  3. Hent aksjeprisen til det siste selskapet på den siste dagen ved å bruke negativ indeksering.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 2

Spør AI

expand
ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

book
Multidimensional Indeksering

Nå som du kan få tilgang til elementer i 1D-arrays, er det på tide å lære om indeksering i høyere-dimensjonale arrays.

2D Arrays Indeksering

Dette er en 2x3 matrise, som betyr at den består av 2 1D-arrayer langs akse 0, og hver av disse 1D-arrayene har 3 elementer langs akse 1.

Bildene nedenfor vil klargjøre positiv og negativ indeksering i 2D-arrayer (arrayverdier vises i svart, og indekser vises i grønn for positive indekser og rød for negative indekser):

Tilgang til elementer i 2D-arrays

I 1D-arrays fikk vi tilgang til elementer ved å spesifisere indeksen til elementet i firkantede parenteser. Hvis vi gjør det samme i 2D-arrays, henter vi en 1D-array på den angitte indeksen, noe som kan være akkurat det vi trenger.

Men hvis vi ønsker å hente et bestemt element i en indre 1D-array, bør vi spesifisere indeksen til 1D-arrayen (langs akse 0) og indeksen til elementet (langs akse 1), f.eks. array[0, 1]. Vi kunne også skrive array[0][1] som vi gjør med Python list, men dette er mindre effektivt siden det utfører søket to ganger for hver indeks i stedet for én gang.

Merk

Hvis en angitt indeks er utenfor grensene, kastes en IndexError, så vær oppmerksom på det.

12345678
import 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])
copy

Bildet nedenfor viser strukturen til stock_prices-arrayen brukt i oppgaven:

Oppgave

Swipe to start coding

stock_prices inneholder simulerte aksjepriser over fem dager for fem forskjellige selskaper. Hver rad tilsvarer et bestemt selskap, og hver kolonne tilsvarer en bestemt dag. Følgelig representerer hvert element i matrisen sluttkursen på et bestemt selskaps aksje på en gitt dag.

  1. Hent alle aksjeprisene til det første selskapet over fem dager ved å bruke positiv indeksering.

  2. Hent aksjeprisen til det tredje selskapet på den andre dagen ved å bruke positiv indeksering.

  3. Hent aksjeprisen til det siste selskapet på den siste dagen ved å bruke negativ indeksering.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 2. Kapittel 2
Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Vi beklager at noe gikk galt. Hva skjedde?
some-alt