NumPy Array Slicing
Cắt mảng
Cắt trong python có nghĩa là lấy các phần tử từ một chỉ mục nhất định sang một chỉ mục nhất định khác.
Chúng tôi chuyển lát cắt thay vì chỉ mục như thế này :.[start:end]
Chúng ta cũng có thể xác định bước, như sau :.[start:end:step]
Nếu chúng tôi không vượt qua bắt đầu, nó được coi là 0
Nếu chúng tôi không vượt qua kết thúc chiều dài được coi là của mảng trong thứ nguyên đó
Nếu chúng ta không vượt qua bước, nó được coi là 1
Thí dụ
Cắt các phần tử từ chỉ số 1 đến chỉ số 5 từ mảng sau:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[1:5])
Lưu ý: Kết quả bao gồm chỉ mục bắt đầu, nhưng loại trừ chỉ mục kết thúc.
Thí dụ
Cắt các phần tử từ chỉ số 4 đến cuối mảng:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[4:])
Thí dụ
Phần tử cắt từ đầu đến chỉ mục 4 (không bao gồm):
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[:4])
Lát phủ định
Sử dụng toán tử trừ để tham chiếu đến một chỉ mục từ cuối:
Thí dụ
Cắt từ chỉ mục 3 từ cuối xuống chỉ mục 1 từ cuối:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[-3:-1])
BƯƠC
Sử dụng step
giá trị để xác định bước của quá trình cắt lát:
Thí dụ
Trả lại mọi phần tử khác từ chỉ mục 1 đến chỉ mục 5:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[1:5:2])
Thí dụ
Trả về mọi phần tử khác từ toàn bộ mảng:
import numpy as np
arr = np.array([1, 2, 3, 4, 5, 6, 7])
print(arr[::2])
Cắt mảng 2-D
Thí dụ
Từ phần tử thứ hai, cắt các phần tử từ chỉ mục 1 đến chỉ mục 4 (không bao gồm):
import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[1, 1:4])
Lưu ý: Hãy nhớ rằng phần tử thứ hai có chỉ số 1.
Thí dụ
Từ cả hai phần tử, trả về chỉ mục 2:
import numpy as np
arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])
print(arr[0:2, 2])
Thí dụ
Từ cả hai phần tử, lát cắt chỉ mục 1 đến chỉ mục 4 (không được bao gồm), điều này sẽ trả về một mảng 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])