NumPy 數組裁切

裁切數組

python 中裁切的意思是將元素從一個給定的索引帶到另一個給定的索引。

我們像這樣傳遞切片而不是索引:[startend]

我們還可以定義步長,如下所示:[startendstep]

如果我們不傳遞 start,則將其視為 0。

如果我們不傳遞 end,則視為該維度內數組的長度。

如果我們不傳遞 step,則視為 1。

實例

從下面的數組中裁切索引 1 到索引 5 的元素:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[1:5])

運行實例

注釋:結果包括了開始索引,但不包括結束索引。

實例

裁切數組中索引 4 到結尾的元素:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[4:])

運行實例

實例

裁切從開頭到索引 4(不包括)的元素:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[:4])

運行實例

負裁切

使用減號運算符從末尾開始引用索引:

實例

從末尾開始的索引 3 到末尾開始的索引 1,對數組進行裁切:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[-3:-1])

運行實例

STEP

請使用 step 值確定裁切的步長:

實例

從索引 1 到索引 5,返回相隔的元素:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[1:5:2])

運行實例

實例

返回數組中相隔的元素:

import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[::2])

運行實例

裁切 2-D 數組

實例

從第二個元素開始,對從索引 1 到索引 4(不包括)的元素進行切片:

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

運行實例

注釋:請記得第二個元素的索引為 1。

實例

從兩個元素中返回索引 2:

import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[0:2, 2])

運行實例

實例

從兩個元素裁切索引 1 到索引 4(不包括),這將返回一個 2-D 數組:

import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[0:2, 1:4])

運行實例