Định hình lại
Bài học 9 trên 18 trong khóa học Nền tảng NumPy của Coddy.
Chúng ta có thể tạo các mảng mạnh mẽ bằng phương thức reshape.
Cú pháp là: np.reshape(ary, newshape)
reshape thay đổi hình dạng của mảng. Hình dạng mới là một tuple hoặc danh sách có tích các kích thước bằng tích các kích thước của hình dạng cũ.
Ví dụ: hình dạng cũ: (2, 5), tích các kích thước: 2*5=10, hình dạng mới có thể là bất kỳ tổ hợp số nào miễn sao tích bằng 10, nghĩa là hình dạng mới có thể là một trong các dạng sau: (1, 10) , (10, 1) , (5, 2)
Ví dụ 1
ary = np.arange(10) # --> [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
ary = np.reshape(ary, (5, 2))
>>> [[0, 1],
[2, 3],
[4, 5],
[6, 7],
[8, 9]]Ví dụ 2
ary = np.zeros(6) # --> [0., 0., 0., 0., 0., 0.]
ary = np.reshape(ary, (2, 3))
>>> [[0., 0., 0.],
[0., 0., 0.]]Ví dụ 3
Định hình lại thành mảng có nhiều chiều hơn
ary = np.arange(12)
ary = np.reshape(ary, (2, 3, 2))
>>> [[[ 0, 1],
[ 2, 3],
[ 4, 5]],
[[ 6, 7],
[ 8, 9],
[10, 11]]]
Thử thách
DễTạo một mảng numpy chứa các phần tử tăng dần từ 1 đến 200 (bao gồm cả 200): [1, 2, 3, 4, 5, 6, ..., 200]
và định hình lại thành kích thước (20, 10)
Tự làm thử
import numpy as np
print(ary)Tất cả bài học trong Nền tảng NumPy
2Tạo mảng nhiều chiều
Chiều cao hơnTìm hiểu về hình dạngĐiền bằng giá trị cố địnhCác kiểu dữ liệu NumPyKhoảngĐịnh hình lạiTự luyện tập: Trình biên dịch Python online