NumPy massivlarini kesish (slicing)


ULASHISH

Massivlarni kesish (slicing)

Pythonda kesish (slicing) — elementlarni berilgan bir indeksdan boshqa berilgan indeksgacha olish demakdir.

Indeks o‘rniga kesmani quyidagicha uzatamiz: [start:end].

Qadamni (step) ham quyidagicha belgilashimiz mumkin: [start:end:step].

Agar start berilmasa, u 0 deb hisoblanadi

Agar end berilmasa, u massivning shu o‘lchamdagi uzunligi deb hisoblanadi

Agar step berilmasa, u 1 deb hisoblanadi

Misol

Quyidagi massivdan 1-indeksdan 5-indeksgacha bo‘lgan elementlarni kesib oling:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7]) print(arr[1:5])
O‘zingiz sinab ko‘ring »

Eslatma: Natijaga boshlang‘ich indeks kiradi, lekin oxirgi indeks kirmaydi.

Misol

4-indeksdan massiv oxirigacha bo‘lgan elementlarni kesib oling:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7]) print(arr[4:])
O‘zingiz sinab ko‘ring »

Misol

Boshidan 4-indeksgacha (4-indeks kirmaydi) bo‘lgan elementlarni kesib oling:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7]) print(arr[:4])
O‘zingiz sinab ko‘ring »


Manfiy kesish

Indeksga oxiridan murojaat qilish uchun minus operatoridan foydalaning:

Misol

Oxiridan 3-indeksdan oxiridan 1-indeksgacha kesib oling:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7]) print(arr[-3:-1])
O‘zingiz sinab ko‘ring »

QADAM (STEP)

Kesish qadamini belgilash uchun step qiymatidan foydalaning:

Misol

1-indeksdan 5-indeksgacha bo‘lgan elementlarni bittadan oralatib qaytaring:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7]) print(arr[1:5:2])
O‘zingiz sinab ko‘ring »

Misol

Butun massivdan elementlarni bittadan oralatib qaytaring:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7]) print(arr[::2])
O‘zingiz sinab ko‘ring »

2-D massivlarni kesish

Misol

Ikkinchi elementdan 1-indeksdan 4-indeksgacha (4-indeks kirmaydi) bo‘lgan elementlarni kesib oling:

import numpy as np arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]) print(arr[1, 1:4])
O‘zingiz sinab ko‘ring »

Eslatma: Esda tuting: ikkinchi element 1 indeksiga ega.

Misol

Ikkala elementdan 2-indeksdagi qiymatni qaytaring:

import numpy as np arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]) print(arr[0:2, 2])
O‘zingiz sinab ko‘ring »

Misol

Ikkala elementdan 1-indeksdan 4-indeksgacha (4-indeks kirmaydi) kesib oling, bu 2-D massiv qaytaradi:

import numpy as np arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]) print(arr[0:2, 1:4])
O‘zingiz sinab ko‘ring »


W3Schools Pathfinder

Yutuqlaringizni kuzating – bu bepul!