Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Trả về gradient của mảng N chiều trên trục 0 trong Python


Gradient được tính bằng sai phân trung tâm bậc hai chính xác ở các điểm nội bộ và sai phân một phía bậc một hoặc hai ở biên. Gradient trả về có cùng shape với mảng đầu vào. Tham số f là mảng N chiều chứa mẫu của hàm scalar. Tham số varargs là khoảng cách giữa các giá trị f (mặc định đơn vị). Tham số edge_order {1,2} là bậc chính xác tại biên (mặc định 1). Tham số axis là trục tính gradient (mặc định None tính cho tất cả trục). Trả về danh sách ndarray tương ứng đạo hàm theo từng chiều.

Các bước

Nhập thư viện:

import numpy as np

Tạo mảng NumPy kiểu float:

arr = np.array([[20, 35, 57], [70, 85, 120]], dtype=float)

Hiển thị mảng:

print("Mảng của chúng ta...\n", arr)

Kiểm tra số chiều:

print("\nSố chiều mảng...\n", arr.ndim)

Lấy kiểu dữ liệu:

print("\nKiểu dữ liệu đối tượng mảng...\n", arr.dtype)

Tính gradient trên trục 0:

print("\nKết quả (gradient)...\n", np.gradient(arr, axis=0))

Ví dụ hoàn chỉnh

import numpy as np
arr = np.array([[20, 35, 57], [70, 85, 120]], dtype=float)
print("Mảng của chúng ta...\n", arr)
print("\nSố chiều mảng...\n", arr.ndim)
print("\nKiểu dữ liệu đối tượng mảng...\n", arr.dtype)
print("\nKết quả (gradient)...\n", np.gradient(arr, axis=0))

Kết quả

Mảng của chúng ta...
[[ 20. 35. 57.] [ 70. 85. 120.]]
Số chiều mảng... 2
Kiểu dữ liệu đối tượng mảng... float64
Kết quả (gradient)...
[[50. 50. 63.] [50. 50. 63.]]