2d numpy dizisi nasıl dilimlenir (örneklerle)


Bir 2D NumPy dizisini dilimlemek için aşağıdaki yöntemleri kullanabilirsiniz:

Yöntem 1: 2D NumPy Dizisinde Belirli Satırları Seçin

 #select rows in index positions 2 through 5
arr[ 2 : 5 ,:]

Yöntem 2: 2D NumPy Tablosunda Belirli Sütunları Seçin

 #select columns in index positions 1 through 3
arr[:, 1 : 3 ]

Yöntem 3: NumPy 2D Tablosunda Belirli Satırları ve Sütunları Seçin

 #select rows in range 2:5 and columns in range 1:3
arr[ 2 : 5,1 :3 ]

Aşağıdaki örnekler, her yöntemin aşağıdaki 2D NumPy dizisiyle pratikte nasıl kullanılacağını gösterir:

 import numpy as np

#create NumPy array
arr = np. arange ( 24 ). reshape ( 6,4 )

#view NumPy array
print (arr)

[[ 0 1 2 3]
 [4 5 6 7]
 [8 9 10 11]
 [12 13 14 15]
 [16 17 18 19]
 [20 21 22 23]]

Örnek 1: 2D NumPy dizisinin belirli satırlarını seçin

2’den 5’e kadar dizin konumlarındaki satırları seçmek için aşağıdaki sözdizimini kullanabiliriz:

 #select rows in index positions 2 through 5
arr[ 2 : 5 ,:]

array([[ 8, 9, 10, 11],
       [12, 13, 14, 15],
       [16, 17, 18, 19]])

2:5 sözdiziminin NumPy’ye 2’den 5’e kadar olan satırları seçmesini söylediğini ancak 5’i içermediğini unutmayın.

Yani bu sözdizimi, dizin konumları 2, 3 ve 4 olan satırlardaki tüm değerleri seçer.

Örnek 2: 2D NumPy dizisinden belirli sütunları seçin

1’den 3’e kadar dizin konumlarındaki sütunları seçmek için aşağıdaki sözdizimini kullanabiliriz:

 #select columns in index positions 1 through 3
arr[, 1 : 3 ]

array([[ 1, 2],
       [5, 6],
       [9, 10],
       [13, 14],
       [17, 18],
       [21, 22]]))

1:3 sözdiziminin NumPy’ye 1’den 3’e kadar olan sütunları seçmesini söylediğini ancak 3’ü içermediğini unutmayın.

Yani bu sözdizimi, dizin konumları 1 ve 2 olan sütunlardaki tüm değerleri seçer.

Örnek 3: NumPy 2D dizisinin belirli satırlarını ve sütunlarını seçin

2’den 5’e kadar dizin konumlarındaki satırları ve 1’den 3’e kadar dizin konumlarındaki sütunları seçmek için aşağıdaki sözdizimini kullanabiliriz:

 #select rows in 2:5 and columns in 1:3
arr[ 2 : 5,1 :3 ]

array([[ 9, 10],
       [13, 14],
       [17, 18]])

Bu sözdizimi, 2D NumPy dizisindeki 2’den 5’e kadar satır dizini konumları ve 1’den 3’e kadar sütun dizini konumları arasındaki tüm değerleri döndürür.

Ek kaynaklar

Aşağıdaki eğitimler NumPy’de diğer genel işlemlerin nasıl gerçekleştirileceğini açıklamaktadır:

NumPy dizisinde değer endeksi nasıl bulunur?
NumPy dizisinden belirli bir sütun nasıl alınır
NumPy dizisine sütun nasıl eklenir

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir