2d numpy 配列をスライスする方法 (例付き)


次のメソッドを使用して、2D NumPy 配列をスライスできます。

方法 1: 2D NumPy 配列内の特定の行を選択する

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

方法 2: 2D NumPy テーブルの特定の列を選択する

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

方法 3: NumPy 2D テーブルの特定の行と列を選択する

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

次の例は、次の 2D NumPy 配列で各メソッドを実際に使用する方法を示しています。

 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]]

例 1: 2D NumPy 配列の特定の行を選択する

次の構文を使用して、インデックス位置 2 ~ 5 の行を選択できます。

 #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構文は、NumPy に 2 行目から5 行目を選択するように指示しますが、5 行目は含まれないことに注意してください。

したがって、この構文はインデックス位置が 2、3、4 の行からすべての値を選択します。

例 2: 2D NumPy 配列から特定の列を選択する

次の構文を使用して、インデックス位置 1 ~ 3 の列を選択できます。

 #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構文は NumPy に列 1 3 を選択するように指示しますが、列 3 は含まれないことに注意してください。

したがって、この構文はインデックス位置 1 と 2 の列からすべての値を選択します。

例 3: NumPy 2D 配列の特定の行と列を選択する

次の構文を使用して、インデックス位置 2 ~ 5 の行とインデックス位置 1 ~ 3 の列を選択できます。

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

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

この構文は、2D NumPy 配列内の行インデックス位置 2 ~ 5 と列インデックス位置 1 ~ 3 の間のすべての値を返します。

追加リソース

次のチュートリアルでは、NumPy で他の一般的な操作を実行する方法について説明します。

NumPy配列の値インデックスを見つける方法
NumPy配列から特定の列を取得する方法
NumPy配列に列を追加する方法

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です