Hướng dẫn how to add multiple array in single array in python - cách thêm nhiều mảng vào một mảng trong python

Hãy bắt đầu với một số dữ liệu ngẫu nhiên.

>>> import numpy as np
>>> day1 = np.random.randint(255, size=(1, 81, 141))

Mảng của bạn có kích thước có kích thước 1, vì vậy mỗi khi bạn muốn truy cập một phần tử, bạn sẽ phải loại

>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
0. Bạn có thể loại bỏ kích thước cần thiết đó với
>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
1.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36

Bây giờ chúng ta hãy làm thêm một số trong số này.

>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)

Bạn có thể đặt tất cả những thứ này trong một danh sách lớn và chuyển chúng đến

>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
2 sẽ tạo ra một mảng có kích thước
>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
3, trong đó
>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
4 là số ngày bạn có.

>>> allDays = np.array([day1, day2, day3])
>>> allDays.shape
(3, 81, 141)

Tất cả dữ liệu từ

>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
5 đều ở Index 0, từ
>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
6 trong INDEX 1, v.v.

>>> allDays[0,50,50]
36


Tham gia các mảng Numpy

Tham gia có nghĩa là đặt nội dung của hai hoặc nhiều mảng trong một mảng.

Trong SQL, chúng tôi tham gia các bảng dựa trên khóa, trong khi trong Numpy, chúng tôi tham gia các mảng theo trục.

Chúng tôi vượt qua một chuỗi các mảng mà chúng tôi muốn tham gia vào hàm

>>> day2 = np.random.randint(255, size=day1.shape)
>>> day3 = np.random.randint(255, size=day1.shape)
7, cùng với trục. Nếu trục không được thông qua rõ ràng, nó được lấy là 0.

Thí dụ

Tham gia hai mảng

nhập khẩu NUMPY dưới dạng NP

ARR1 = np.array ([1, 2, 3])

ARR2 = np.array ([4, 5, 6])

mảng = np.concatenate ((ARR1, ARR2))

print(arr)

Hãy tự mình thử »

Thí dụ

Tham gia hai mảng

nhập khẩu NUMPY dưới dạng NP

ARR1 = np.array ([1, 2, 3])

ARR2 = np.array ([4, 5, 6])

mảng = np.concatenate ((ARR1, ARR2))

Hãy tự mình thử »

Hãy tự mình thử »


Tham gia hai mảng 2-D dọc theo các hàng (trục = 1):

ARR1 = np.array ([[1, 2], [3, 4]]))

ARR2 = np.array ([[5, 6], [7, 8]]))

mảng = np.concatenate ((ARR1, ARR2), trục = 1)

Thí dụ

nhập khẩu NUMPY dưới dạng NP

ARR1 = np.array ([1, 2, 3])

ARR2 = np.array ([4, 5, 6])

mảng = np.concatenate ((ARR1, ARR2))

print(arr)

Hãy tự mình thử »



Tham gia hai mảng 2-D dọc theo các hàng (trục = 1):

ARR1 = np.array ([[1, 2], [3, 4]]))

Thí dụ

nhập khẩu NUMPY dưới dạng NP

ARR1 = np.array ([1, 2, 3])

ARR2 = np.array ([4, 5, 6])

mảng = np.concatenate ((ARR1, ARR2))

print(arr)

Hãy tự mình thử »


Tham gia hai mảng 2-D dọc theo các hàng (trục = 1):

ARR1 = np.array ([[1, 2], [3, 4]]))

Thí dụ

nhập khẩu NUMPY dưới dạng NP

ARR1 = np.array ([1, 2, 3])

ARR2 = np.array ([4, 5, 6])

mảng = np.concatenate ((ARR1, ARR2))

print(arr)

Hãy tự mình thử »


Tham gia hai mảng 2-D dọc theo các hàng (trục = 1):

ARR1 = np.array ([[1, 2], [3, 4]]))

Thí dụ

nhập khẩu NUMPY dưới dạng NP

ARR1 = np.array ([1, 2, 3])

ARR2 = np.array ([4, 5, 6])

mảng = np.concatenate ((ARR1, ARR2))

print(arr)

Hãy tự mình thử »


Tham gia hai mảng 2-D dọc theo các hàng (trục = 1):

Exercise:

ARR1 = np.array ([[1, 2], [3, 4]]))

ARR2 = np.array ([[5, 6], [7, 8]]))

mảng = np.concatenate ((ARR1, ARR2), trục = 1)


Hướng dẫn how to add multiple array in single array in python - cách thêm nhiều mảng vào một mảng trong python
Numpy Concatenate mảng

Thường thì bạn có thể có hai hoặc nhiều mảng numpy và muốn kết nối/tham gia/hợp nhất chúng thành một mảng duy nhất. Python cung cấp nhiều tùy chọn để tham gia/kết hợp các mảng numpy.

Các hoạt động phổ biến bao gồm hai mép 2D, làm thế nào chúng ta có thể kết hợp chúng với hàng khôn ngoan hoặc cột khôn ngoan. Chức năng Numpy từ Concatenate cho phép bạn nối hai mảng bằng các hàng hoặc theo cột. Hãy cho chúng tôi xem một vài ví dụ về chức năng liên kết Numpy.

Trước tiên chúng ta hãy nhập gói Numpy.

# import numpy
import numpy as np

Chúng ta hãy tạo một mảng numpy bằng cách sử dụng chức năng Arange trong Numpy. Mảng 1d bắt đầu lúc 0 và kết thúc lúc 8

array = np.arange(9)
array

Chúng ta có thể sử dụng chức năng định hình lại Numpy, để chuyển đổi mép 1D thành 2D mảng kích thước 3 × 3, 3 hàng và 3 cột. Chức năng định hình lại của Numpy lấy một bộ xử lý làm đầu vào.

array2D_1 = array.reshape((3,3))
array2D_1

array([[0, 1, 2],
       [3, 4, 5],
       [6, 7, 8]])

Hãy để chúng tôi tạo mảng 2D thứ hai bằng cách sử dụng các hàm Arange và định hình lại. Mảng 2D thứ hai bắt đầu ở 10 và kết thúc ở 18

>array2D_2 = np.arange(10,19).reshape(3,3)
>array2D_2

array([[10, 11, 12],
       [13, 14, 15],
       [16, 17, 18]])

Numpy concatenate

Có thể sử dụng chức năng Numpy từ Concatenate để kết hợp hai mảng hoặc khôn ngoan theo hàng hoặc theo cột. Chức năng Concatenate có thể lấy hai hoặc nhiều mảng có cùng hình dạng và theo mặc định, nó kết hợp hàng theo nghĩa, tức là trục = 0. Mảng kết quả sau khi ghép nối hàng với hình dạng 6 x 3, tức là 6 hàng và 3 cột.

Làm thế nào để kết hợp 2 mảng numpy hàng ngày?

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
0

Làm thế nào để kết hợp 2 mảng numpy thông minh?

Chúng ta cũng có thể kết hợp 2 mảng numpy theo cột khôn ngoan bằng cách chỉ định trục = 1. Bây giờ mảng kết quả là một ma trận rộng với nhiều cột hơn các hàng; Trong ví dụ này, 3 hàng và 6 cột.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
1

Làm thế nào để kết hợp nhiều hơn 2 mảng numpy khôn ngoan?

Chức năng Numpy từ Concatenate có thể được sử dụng với hơn 2 mảng. Dưới đây là một ví dụ về việc kết hợp 3 mảng numpy. Chúng tôi chỉ định ba mảng mà chúng tôi muốn kết hợp như một tuple.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
2

Ngoài chức năng Concatenate, Numpy cũng cung cấp hai chức năng thuận tiện Hstack và Vstack để xếp/kết hợp các mảng theo chiều ngang hoặc chiều dọc.

Cả Hstack và Vstack, dưới mui xe gọi trên Concatenate với Axis = 1 và Axis = 0 Tùy chọn.

Dưới đây là các ví dụ về việc sử dụng Hstack và Vstack.

Ví dụ Vstack Numpy

Numpy sườn Vstack ngăn xếp các mảng theo trình tự theo chiều dọc, tức là hàng khôn ngoan. Và kết quả giống như sử dụng incatenate với trục = 0.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
3

Một cách sử dụng phổ biến khác của Numpy từ Hstack là sử dụng nó để kết hợp hai mảng 1D-numpy với một mảng 2D. Ví dụ: nếu chúng ta có hai mảng một chiều,

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
4

Chúng ta có thể sử dụng Numpy Vstack Vstack để tạo ra 2D có kích thước 2 × 4

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
5

Tương tự, với chuyển vị, chúng tôi nhận được 2D mảng 4 × 2 bằng VSTack.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
6

Ví dụ Hstack Numpy

Numpy sườn hstack stacks mảng theo chiều ngang, tức là cột khôn ngoan. Và kết quả giống như sử dụng Concatenate với trục = 1.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
7

Làm thế nào để kết hợp nhiều mảng 1D?

Chức năng liên kết Numpy cũng có thể được sử dụng để kết hợp nhiều hơn hai mảng numpy. Dưới đây là một ví dụ, trong đó chúng tôi có ba mảng 1D-numpy và chúng tôi kết hợp ba mảng vào một mảng 1D duy nhất.

Hãy sử dụng Tạo ba mép 1D trong Numpy.

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
8

Và chúng ta có thể sử dụng np.concatenate với ba mảng numpy trong danh sách làm đối số để kết hợp thành một marray 1D

>>> day1[0,50,50]
36
>>> day1 = np.squeeze(day1)
>>> day1.shape
(81, 141)
>>> day1[50,50]
36
9