Hướng dẫn merge 2 arrays in python - hợp nhất 2 mảng trong python


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 concatenate(), 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)


Tất cả các cách có thể để tham gia danh sách mà tôi có thể tìm thấy

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))

Đầu ra

A: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
B: [1, 3, 5, 7, 9, [2, 4, 6, 8, 10]]
C: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
D: [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
E: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
F: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
G: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]

numpy.concatenate ((a1, a2, ...), axis = 0, out = none, dtype = none, casting = "more_kind")#concatenate((a1, a2, ...), axis=0, out=None, dtype=None, casting="same_kind")#

Tham gia một chuỗi các mảng dọc theo một trục hiện có.

Parametersa1, A2, trình tự của Array_likea1, a2, …sequence of array_like

Các mảng phải có hình dạng tương tự, ngoại trừ trong kích thước tương ứng với trục (theo mặc định, theo mặc định).

Trục, tùy chọnint, optional

Các trục dọc theo đó các mảng sẽ được nối. Nếu trục là không, các mảng được làm phẳng trước khi sử dụng. Mặc định là 0.

Outndarray, tùy chọnndarray, optional

Nếu được cung cấp, điểm đến để đặt kết quả. Hình dạng phải đúng, phù hợp với những gì Concatenate sẽ trở lại nếu không có đối số nào được chỉ định.

DTYPEST hoặc DTYPEstr or dtype

Nếu được cung cấp, mảng đích sẽ có DTYPE này. Không thể được cung cấp cùng với ra ngoài.

Mới trong phiên bản 1.20.0.

Đúc {‘no,’ tương đương, ’an toàn{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, optional

Kiểm soát loại đúc dữ liệu có thể xảy ra. Mặc định là ‘giống nhau_kind.

Mới trong phiên bản 1.20.0.

Đúc {‘no,’ tương đương, ’an toànresndarray

Kiểm soát loại đúc dữ liệu có thể xảy ra. Mặc định là ‘giống nhau_kind.

ReturnSresndarray

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
0

Các mảng được nối.

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
1

Xem thêm

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
2

Chức năng Concatenate bảo tồn mặt nạ đầu vào.

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
3

Chia một mảng thành nhiều mép phụ có kích thước bằng hoặc gần bằng nhau.

Chia mảng thành một danh sách nhiều mảng phụ có kích thước bằng nhau.

Chia mảng thành nhiều mảng phụ theo chiều ngang (cột khôn ngoan).

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
5

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
4

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
6

Chia mảng thành nhiều mảng phụ theo chiều dọc (hàng khôn ngoan).

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
7

Chia mảng thành nhiều mảng con dọc theo trục thứ 3 (độ sâu).

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
8

Các mảng ngăn xếp theo thứ tự theo chiều ngang (cột khôn ngoan).

import itertools

A = [1,3,5,7,9] + [2,4,6,8,10]

B = [1,3,5,7,9]
B.append([2,4,6,8,10])

C = [1,3,5,7,9]
C.extend([2,4,6,8,10])

D = list(zip([1,3,5,7,9],[2,4,6,8,10]))
E = [1,3,5,7,9]+[2,4,6,8,10]
F = list(set([1,3,5,7,9] + [2,4,6,8,10]))

G = []
for a in itertools.chain([1,3,5,7,9], [2,4,6,8,10]):
    G.append(a)


print("A: " + str(A))
print("B: " + str(B))
print("C: " + str(C))
print("D: " + str(D))
print("E: " + str(E))
print("F: " + str(F))
print("G: " + str(G))
9

Các mảng xếp theo trình tự theo chiều dọc (hàng khôn ngoan).

A: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
B: [1, 3, 5, 7, 9, [2, 4, 6, 8, 10]]
C: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
D: [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
E: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
F: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
G: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
0

Các mảng ngăn xếp theo trình tự độ sâu khôn ngoan (dọc theo chiều thứ ba).

A: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
B: [1, 3, 5, 7, 9, [2, 4, 6, 8, 10]]
C: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
D: [(1, 2), (3, 4), (5, 6), (7, 8), (9, 10)]
E: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
F: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
G: [1, 3, 5, 7, 9, 2, 4, 6, 8, 10]
1

Xếp các mảng 1-D dưới dạng các cột thành một mảng 2-D.

Ghi chú

Khi một hoặc nhiều mảng được nối là MaskedArray, chức năng này sẽ trả về một đối tượng MaskedArray thay vì ndarray, nhưng mặt nạ đầu vào không được bảo quản. Trong trường hợp được mong đợi một mặt nạ được dự kiến ​​làm đầu vào, hãy sử dụng hàm ma.concatenate từ mô -đun mảng đeo mặt nạ.

Ví dụ

>>> a = np.array([[1, 2], [3, 4]])
>>> b = np.array([[5, 6]])
>>> np.concatenate((a, b), axis=0)
array([[1, 2],
       [3, 4],
       [5, 6]])
>>> np.concatenate((a, b.T), axis=1)
array([[1, 2, 5],
       [3, 4, 6]])
>>> np.concatenate((a, b), axis=None)
array([1, 2, 3, 4, 5, 6])

Chức năng này sẽ không bảo tồn mặt nạ của đầu vào MaskedArray.

>>> a = np.ma.arange(3)
>>> a[1] = np.ma.masked
>>> b = np.arange(2, 5)
>>> a
masked_array(data=[0, --, 2],
             mask=[False,  True, False],
       fill_value=999999)
>>> b
array([2, 3, 4])
>>> np.concatenate([a, b])
masked_array(data=[0, 1, 2, 2, 3, 4],
             mask=False,
       fill_value=999999)
>>> np.ma.concatenate([a, b])
masked_array(data=[0, --, 2, 2, 3, 4],
             mask=[False,  True, False, False, False, False],
       fill_value=999999)

Làm thế nào để tôi hợp nhất các mảng numpy?

Tham gia các mảng numpy 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 concatenate (), 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.

Làm cách nào để kết hợp hai mảng?

Để hợp nhất hai mảng, chúng tôi tìm thấy độ dài của nó và được lưu trữ trong biến FAL và SAL tương ứng.Sau đó, chúng tôi tạo một kết quả mảng số nguyên mới lưu trữ tổng chiều dài của cả hai mảng.Bây giờ, sao chép từng phần tử của cả hai mảng vào mảng kết quả bằng cách sử dụng hàm ArrayCopy ().

Làm cách nào để hợp nhất hai mảng thành một khung dữ liệu trong Python?

Chúng ta có thể sử dụng np.column_stack () để kết hợp hai mảng 1-D x và y thành mảng 2-D.Sau đó, chúng ta có thể sử dụng PD.DataFrame để thay đổi nó thành một DataFrame.use np. column_stack() to combine two 1-D arrays X and Y into a 2-D array. Then, we can use pd. DataFrame to change it into a dataframe.