NumPy Skikking Sny


Sny skikkings

Sny in luislang beteken om elemente van een gegewe indeks na 'n ander gegewe indeks te neem.

Ons gee sny in plaas van indeks soos volg: .[start:end]

Ons kan ook die stap soos volg definieer: .[start:end:step]

As ons nie slaag nie, begin dit as 0

As ons nie slaag nie, eindig sy beskoude lengte van skikking in daardie dimensie

As ons nie stap slaag nie, word dit as 1 beskou

Voorbeeld

Sny elemente van indeks 1 tot indeks 5 uit die volgende skikking:

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

print(arr[1:5])

Let wel: Die resultaat sluit die beginindeks in, maar sluit die eindindeks uit.

Voorbeeld

Sny elemente van indeks 4 tot aan die einde van die skikking:

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

print(arr[4:])

Voorbeeld

Sny elemente van die begin tot indeks 4 (nie ingesluit nie):

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

print(arr[:4])


Negatiewe sny

Gebruik die minusoperateur om na 'n indeks vanaf die einde te verwys:

Voorbeeld

Sny van die indeks 3 van die einde tot indeks 1 van die einde af:

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

print(arr[-3:-1])

STAP

Gebruik die stepwaarde om die stap van die sny te bepaal:

Voorbeeld

Gee elke ander element van indeks 1 na indeks 5 terug:

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

print(arr[1:5:2])

Voorbeeld

Gee elke ander element van die hele skikking terug:

import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7])

print(arr[::2])

Sny 2-D-skikkings

Voorbeeld

Van die tweede element, sny elemente van indeks 1 tot indeks 4 (nie ingesluit nie):

import numpy as np

arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])

print(arr[1, 1:4])

Let wel: Onthou dat tweede element indeks 1 het.

Voorbeeld

Uit beide elemente, opbrengsindeks 2:

import numpy as np

arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])

print(arr[0:2, 2])

Voorbeeld

Van beide elemente, sny indeks 1 tot indeks 4 (nie ingesluit nie), sal dit 'n 2-D skikking terugstuur:

import numpy as np

arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])

print(arr[0:2, 1:4])

Toets jouself met oefeninge

Oefening:

Voeg die korrekte snysintaksis in om die volgende seleksie van die skikking te druk:

Alles van (insluitend) die tweede item tot (nie ingesluit nie) die vyfde item.

arr = np.array([10, 15, 20, 25, 30, 35, 40])

print(arr)