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 ravel() trong NumPy

Trong bài viết này, bạn sẽ học cách sử dụng hàm NumPy ravel() để trả về một mảng phẳng liên tục từ một mảng đa chiều. Hàm ravel() là một công cụ hữu ích trong thư viện NumPy, giúp bạn biến đổi các mảng có nhiều chiều thành mảng một chiều mà vẫn duy trì thứ tự các phần tử. Điều này rất hữu ích khi bạn cần xử lý hoặc phân tích dữ liệu một cách đơn giản và hiệu quả hơn. Hãy cùng tìm hiểu cách sử dụng hàm ravel() thông qua các ví dụ cụ thể và dễ hiểu.

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 ravel() trong NumPy

Hàm ravel() nhận vào một mảng và trả về một mảng 1 chiều chứa các phần tử của mảng đầu vào:

numpy.ravel(a, order='C')

Trong cú pháp này:

  • a là một mảng NumPy. Nó có thể là bất kỳ đối tượng nào giống mảng, ví dụ như danh sách. Một đối tượng giống mảng là một đối tượng có thể được chuyển đổi thành mảng NumPy.
  • order xác định thứ tự của các phần tử. Hãy xem phương thức flatten() để biết thông tin chi tiết về tham số order và các giá trị của nó.

Ví dụ về hàm ravel() trong NumPy

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

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

Sử dụng hàm ravel() để phẳng hóa một mảng trong NumPy

Ví dụ sau sử dụng hàm ravel() để phẳng hóa một mảng 2 chiều:

import numpy as np

a = np.array([[1, 2], [3, 4]])
b = np.ravel(a)
#Bài viết này được đăng tại freetuts.net

print(b)

Kết quả:

[1 2 3 4]

Screenshot 202024 06 07 20165009 png

Cách hoạt động:

  • Đầu tiên, tạo một mảng 2 chiều:
a = np.array([[1, 2], [3, 4]])

Thứ hai, phẳng hóa mảng bằng cách sử dụng hàm ravel():

b = np.ravel(a)

Thứ ba, hiển thị mảng kết quả:

print(b)

Hàm ravel() và phương thức flatten()

Phương thức flatten() tạo một bản sao của mảng đầu vào trong khi hàm ravel() tạo một view của mảng. Hàm ravel() chỉ tạo bản sao của mảng khi cần thiết. Ví dụ:

import numpy as np

a = np.array([[1, 2], [3, 4]])
b = np.ravel(a)

# thay đổi phần tử tại chỉ số 0
b[0] = 0
#Bài viết này được đăng tại freetuts.net

# hiển thị cả hai mảng b và a
print(b)
print(a)

Cách hoạt động:

  • Đầu tiên, sử dụng hàm ravel() để tạo một view của mảng a:
b = np.ravel(a)

Thứ hai, thay đổi phần tử tại chỉ số 0 của mảng b thành số 0:

b[0] = 0

Hiển thị cả hai mảng ab. Vì mảng b là một view của mảng a, thay đổi trong mảng b sẽ được phản ánh trong mảng a:

print(b)
print(a)

Một điểm khác biệt quan trọng khác giữa phương thức flatten() và hàm ravel() là bạn có thể gọi phương thức flatten() trên một đối tượng ndarray, trong khi bạn có thể gọi hàm ravel() trên một đối tượng giống mảng.

Kết bài

Sử dụng hàm numpy ravel() để trả về một mảng phẳng liên tục là một phương pháp hiệu quả để biến đổi mảng đa chiều thành mảng một chiều mà không tạo ra bản sao không cần thiết. Điều này giúp tiết kiệm bộ nhớ và tăng tốc độ xử lý dữ liệu, đặc biệt khi làm việc với các mảng lớn. Bằng cách linh hoạt lựa chọn thứ tự sắp xếp các phần tử, bạn có thể dễ dàng điều chỉnh kết quả cho phù hợp với yêu cầu cụ thể của mình. Hãy áp dụng hàm ravel() vào các bài toán thực tế để trải nghiệm sự tiện lợi mà nó mang lại trong việc xử lý và phân tích dữ liệu.

Cùng chuyên mục:

Hướng dẫn xây dựng Command-Line Interface (CLI) bằng Quo trong Python

Hướng dẫn xây dựng Command-Line Interface (CLI) bằng Quo trong Python

Hướng dẫn toàn diện về module datetime trong Python

Hướng dẫn toàn diện về module datetime trong Python

Cách truy cập và thiết lập biến môi trường trong Python

Cách truy cập và thiết lập biến môi trường trong Python

Lớp dữ liệu (Data Classes) trong Python với decorator @dataclass

Lớp dữ liệu (Data Classes) trong Python với decorator @dataclass

Từ khóa yield trong Python

Từ khóa yield trong Python

Sự khác biệt giữa sort() và sorted() trong Python

Sự khác biệt giữa sort() và sorted() trong Python

Sử dụng Poetry để quản lý dependencies trong Python

Sử dụng Poetry để quản lý dependencies trong Python

Định dạng chuỗi Strings trong Python

Định dạng chuỗi Strings trong Python

Một tác vụ phổ biến khi làm việc với danh sách trong Python

Một tác vụ phổ biến khi làm việc với danh sách trong Python

Làm việc với các biến môi trường trong Python

Làm việc với các biến môi trường trong Python

Sự khác biệt giữa set() và frozenset() trong Python

Sự khác biệt giữa set() và frozenset() trong Python

Sự khác biệt giữa iterator và iterable trong Python

Sự khác biệt giữa iterator và iterable trong Python

Cách làm việc với file tarball/tar trong Python

Cách làm việc với file tarball/tar trong Python

Chuyển đổi kiểu dữ liệu trong Python

Chuyển đổi kiểu dữ liệu trong Python

Sự khác biệt giữa toán tử == và is trong Python

Sự khác biệt giữa toán tử == và is trong Python

Làm việc với file ZIP trong Python

Làm việc với file ZIP trong Python

Cách sử dụng ThreadPoolExecutor trong Python

Cách sử dụng ThreadPoolExecutor trong Python

Sự khác biệt giữa byte objects và string trong Python

Sự khác biệt giữa byte objects và string trong Python

Xử lý độ chính xác các hàm floor, ceil, round, trunc, format  trong Python

Xử lý độ chính xác các hàm floor, ceil, round, trunc, format trong Python

Cách lặp qua nhiều list với hàm zip() trong Python

Cách lặp qua nhiều list với hàm zip() trong Python

Top