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

Python sử dụng np.reshape để định hình lại một mảng theo một thứ tự cụ thể

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

Tôi có hình dạng như (1800,144) mảng (a) ở đâu a[0:900,:] Đều là số thực, nửa sau là mảng a[900:1800,:] Tất cả đều là số không. Tôi muốn đặt nửa sau của mảng theo chiều ngang bên cạnh nửa đầu và sau đó đẩy chúng lại với nhau để hình dạng mảng mới (a) sẽ là (900.288) Và mảng a, trông như thế này:

[[1,2,3,...,0,0,0],
[1,2,3,...,0,0,0],
...
]

Nếu điều đó có ý nghĩa.

Khi tôi cố gắng sử dụng np.reshape(a,(900,288)) Tuy nhiên, nó không hoàn toàn đáp ứng được yêu cầu của tôi. Nó làm cho tất cả các số thực trong mảng đều đến từ a[0:450,:] và từ a[450:900,:] bằng không. Tôi muốn tất cả các số không được thêm vào chiều thứ hai để a[0:900,0:144] là số thực và a[0:900,144:288] Tất cả đều là số không.

Có cách nào dễ dàng để làm điều này?

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

Bạn có thể sử dụng numpy.hstack() Nối hai mảng:

nhập numpy dưới dạng np
np.hstack([a[0:900,], a[900:1800,]])

Nếu bạn muốn chia mảng thành nhiều hơn hai mảng con, bạn có thể kết hợpnp.splitnp.hstack, như @HM14 đã nhận xét:

np.hstack(np.split(a, n)) # giả sử len(a) % n == 0 ở đây

Về việc sử dụng np.reshape trong Python để định hình lại một mảng theo một thứ tự cụ thể, 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/41560053/

26 4 0
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