NUMPY
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
MỚI CẬP NHẬT

Thông báo: Download 4 khóa học Python từ cơ bản đến nâng cao tại đây.

Cách sử dụng hàm reshape() trong NumPy

Trong bài viết này, bạn sẽ học cách sử dụng hàm numpy reshape() để thay đổi hình dạng của một mảng. Hàm reshape() là một công cụ mạnh mẽ trong thư viện NumPy, cho phép bạn thay đổi cấu trúc của mảng mà không làm thay đổi dữ liệu bên trong. Việc này rất hữu ích khi bạn cần điều chỉnh dữ liệu cho các phép tính toán khác nhau hoặc để phù hợp với các yêu cầu đầu vào của các hàm và thuật toán khác. Bây giờ, chúng ta sẽ cùng tìm hiểu cách sử dụng hàm numpy reshape() thông qua các ví dụ cụ thể.

test php

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

Giới thiệu về hàm reshape() trong Numpy

Hình dạng của một mảng lưu trữ số chiều (hoặc trục) và số phần tử trên mỗi chiều. Thuộc tính shape trả về một tuple mô tả hình dạng của mảng.

Hàm reshape() thay đổi hình dạng của một mảng mà không thay đổi các phần tử của nó. Đây là cú pháp của hàm reshape():

numpy.reshape(a, newshape, order='C')

Trong cú pháp này, hàm reshape() thay đổi hình dạng của mảng a thành newshape nhưng giữ nguyên số lượng phần tử.

Bài viết này được đăng tại [free tuts .net]

Hàm reshape() tương đương với việc gọi phương thức reshape() trên mảng a:

a.reshape(newshape, order='C')

Ví dụ về hàm reshape() trong Numpy

Hãy xem một số ví dụ về việc sử dụng hàm reshape().

Sử dụng hàm numpy reshape() với mảng 1-D

Ví dụ sau sử dụng hàm numpy reshape() để thay đổi một mảng 1-D có 4 phần tử thành một mảng 2-D:

import numpy as np

a = np.arange(1, 5)
print(a)

b = np.reshape(a, (2, 2))
print(b)

Kết quả:

[1 2 3 4]
[[1 2] 
 [3 4]]

Screenshot 202024 06 06 20162931 png

Cách hoạt động:

  • Đầu tiên, tạo một mảng 1-D với bốn số từ 1 đến 4 bằng cách sử dụng hàm arange():

a = np.arange(1, 5)
print(a)

Thứ hai, thay đổi hình dạng của mảng a thành một mảng hai chiều, mỗi chiều có 2 phần tử:

b = np.reshape(a, (2, 2))
print(b)

Hàm numpy reshape() trả về một view

Lưu ý rằng mảng b là một view của mảng a. Điều này có nghĩa là nếu bạn thay đổi một phần tử của mảng b, sự thay đổi này sẽ được phản ánh trong mảng a. Ví dụ:

import numpy as np

a = np.arange(1, 5)
b = np.reshape(a, (2, 2))

# thay đổi phần tử [0,0]
b[0, 0] = 0

print(b)
print(a)

Kết quả:

[[0 2] 
 [3 4]]
[0 2 3 4]

Trong ví dụ này, mình thay đổi phần tử tại chỉ số [0,0] trong mảng b. Sự thay đổi này cũng được phản ánh trong mảng a.

Kết bài

Sử dụng hàm numpy reshape() để thay đổi hình dạng của một mảng mà không thay đổi các phần tử của nó là một kỹ thuật quan trọng trong xử lý dữ liệu. Hàm reshape() cho phép bạn linh hoạt hơn trong việc thao tác với dữ liệu, đảm bảo rằng cấu trúc của mảng phù hợp với yêu cầu của các thuật toán và phép tính toán khác nhau. Điều quan trọng cần nhớ là bạn có thể thay đổi hình dạng của một mảng miễn là số lượng phần tử trong mảng không thay đổi. Qua các ví dụ minh họa, chúng ta đã thấy cách sử dụng hàm reshape() một cách hiệu quả, giúp tối ưu hóa và đơn giản hóa quá trình xử lý dữ liệu trong Python với NumPy.

Cùng chuyên mục:

Tìm hiểu Backreferences trong regex của Python

Tìm hiểu Backreferences trong regex của Python

Nhóm Non-capturing trong Regex Python

Nhóm Non-capturing trong Regex Python

Các nhóm Capturing trong regex của Python

Các nhóm Capturing trong regex của Python

Sets và Ranges trong Regex của Python

Sets và Ranges trong Regex của Python

Lượng từ non-greed trong Regex của Python

Lượng từ non-greed trong Regex của Python

Chế độ Greedy trong Regex Python

Chế độ Greedy trong Regex Python

Các lượng từ trong Regex của Python

Các lượng từ trong Regex của Python

Regex Word Boundary trong Python

Regex Word Boundary trong Python

Regex với các ký tự neo trong Python

Regex với các ký tự neo trong Python

Các tập ký tự trong Regex của Python

Các tập ký tự trong Regex của Python

Biểu thức chính quy (Regex) trong Python

Biểu thức chính quy (Regex) trong Python

Tìm hiểu Context Managers trong Python

Tìm hiểu Context Managers trong Python

Biểu thức Generator trong Python

Biểu thức Generator trong Python

Tìm hiểu Generators trong Python

Tìm hiểu Generators trong Python

Sử dụng hiệu quả hàm iter() trong Python

Sử dụng hiệu quả hàm iter() trong Python

Iterator vs Iterable trong Python

Iterator vs Iterable trong Python

Tìm hiểu về Iterator trong Python

Tìm hiểu về Iterator trong Python

Dãy số Fibonacci trong Python

Dãy số Fibonacci trong Python

Cắt Chuỗi (Slicing) trong Python

Cắt Chuỗi (Slicing) trong Python

Sự khác biệt giữa Tuple và List trong Python

Sự khác biệt giữa Tuple và List trong Python

Top