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 で他の一般的な操作を実行する方法について説明します。