cuốn sách gpt4 ai đã làm

python - ma trận tạo phép nhân vector-vector

In lại Tác giả: Vũ trụ không gian Thời gian cập nhật: 2023-11-04 10:15:14 27 4
mua khóa gpt4 Nike

Tôi là người dùng IDL đang dần chuyển sang numpy/scipy và có một thao tác tôi rất thường xuyên thực hiện trong IDL, nhưng không thể sao chép bằng numpy:

IDL> a = [2., 4]
IDL> b = [3., 5]
IDL> in,a #b
6,00000 12,0000
10.0000 20.0000

Tôi thậm chí không chắc hoạt động này được gọi là gì. Có lẽ rõ ràng là làm thế nào để thực hiện điều này một cách khó khăn, nhưng tôi không thể tìm ra cách dễ dàng.

câu trả lời hay nhất

cái này được gọi là sản phẩm bên ngoàicủa hai vectơ. bạn có thể sử dụng np.outer :

nhập numpy dưới dạng np

a = np.array([2, 4])
b = np.array([3, 5])
c = np.outer(a, b)

in(c)
# [[ 6 10]
# [12 20]]

Giả sử rằng cả hai đầu vào của bạn đều là mảng có nhiều mảng (chứ không phải danh sách Python, v.v.), bạn cũng có thể chuyển đổi tiêu chuẩn * 运算符与 phát sóng Sử dụng cùng nhau:

# bạn cũng có thể thay thế np.newaxis bằng Không cho ngắn gọn (xem bên dưới)
d = a[:, np.newaxis] * b[np.newaxis, :]

Bạn cũng có thể sử dụng np.dotPhát sóng kết hợp:

e = np.dot(a[:, Không], b[Không, :])

Một lựa chọn khác ít được biết đến hơn là sử dụng .outer np.multiply phương pháp ufunc:

f = np.multiply.outer(a, b)

Cá nhân tôi sẽ sử dụng np.outer hoặc * Thực hiện một chương trình phát sóng.

Về python - phép nhân vector-vector để tạo ma trận, chúng tôi tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/35753880/

27 4 0
không gian vũ trụ
Hồ sơ

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá taxi Didi miễn phí
Phiếu giảm giá taxi Didi
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress