NumPy Array Snijden


Matrices snijden

Snijden in python betekent elementen van de ene gegeven index naar een andere gegeven index nemen.

We passeren slice in plaats van index als volgt: .[start:end]

We kunnen de stap ook als volgt definiëren: .[start:end:step]

Als we niet slagen voor start, wordt het beschouwd als 0

Als we het einde van de beschouwde lengte van de array in die dimensie niet doorgeven

Als we de stap niet halen, wordt het beschouwd als 1

Voorbeeld

Segmenteer elementen van index 1 tot index 5 uit de volgende array:

import numpy as np

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

print(arr[1:5])

Opmerking: het resultaat bevat de startindex, maar exclusief de eindindex.

Voorbeeld

Segmenteer elementen van index 4 tot het einde van de array:

import numpy as np

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

print(arr[4:])

Voorbeeld

Segmenteer elementen van het begin tot index 4 (niet inbegrepen):

import numpy as np

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

print(arr[:4])


Negatief snijden

Gebruik de min-operator om vanaf het einde naar een index te verwijzen:

Voorbeeld

Snijd van index 3 vanaf het einde naar index 1 vanaf het einde:

import numpy as np

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

print(arr[-3:-1])

STAP

Gebruik de stepwaarde om de stap van het snijden te bepalen:

Voorbeeld

Retourneer elk ander element van index 1 tot index 5:

import numpy as np

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

print(arr[1:5:2])

Voorbeeld

Retourneer elk ander element uit de hele array:

import numpy as np

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

print(arr[::2])

2D-arrays snijden

Voorbeeld

Snijd vanaf het tweede element elementen van index 1 tot index 4 (niet inbegrepen):

import numpy as np

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

print(arr[1, 1:4])

Opmerking: onthoud dat het tweede element index 1 heeft.

Voorbeeld

Van beide elementen, retourindex 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 elementen, slice index 1 tot index 4 (niet inbegrepen), dit zal een 2D-array retourneren:

import numpy as np

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

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

Test jezelf met oefeningen

Oefening:

Voeg de juiste slicing-syntaxis in om de volgende selectie van de array af te drukken:

Alles van (inclusief) het tweede item tot (niet inclusief) het vijfde item.

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

print(arr)