Hướng dẫn concatenate 2 matrix python - nối 2 ma trận python

Nếu các mảng thực sự là hình dạng (10,1), thì chỉ cần concatenate:

Nội dung chính ShowShow

  • Làm thế nào để bạn tạo một ma trận từ một vector trong Python?
  • Làm cách nào để kết hợp hai mảng thành một ma trận trong Python?
  • Làm thế nào để bạn thêm hai vectơ trong Python?
  • Làm thế nào để bạn chuyển đổi một danh sách nhiều thành một ma trận trong Python?

In [60]: x,y,z = np.ones((10,1),int), np.zeros((10,1),int), np.arange(10)[:,None]              
In [61]: np.concatenate([x,y,z], axis=1)                                                       
Out[61]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])

Nếu chúng thực sự là 1D, bạn sẽ phải thốt lên với kích thước bằng cách này hay cách khác. Ví dụ, định hình lại hoặc thêm một chiều như tôi đã làm với

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
9 ở trên. Hoặc sử dụng một số chức năng làm điều đó cho bạn:

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
0 tham gia các mảng trên một chiều mới ban đầu. Hãy nhớ rằng trong Python/Numpy Kích thước đầu tiên là phần ngoài cùng (Matlab là ngược lại).

Các biến thể

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
1 điều chỉnh các kích thước, và sau đó làm
In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
2:
In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)

===

D0 =np.array([[np.cos(2*np.pi*f*time)],[np.sin(2*np.pi*f*time)],np.ones((len(time),1)).transpose()],'float').transpose()

Tôi đoán

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
3 là vô hướng và
In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
4 là một mảng 1D (hình dạng (10,))
[np.cos(2*np.pi*f*time)]

Kết thúc A (10,) trong

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
5, khi biến thành một mảng trở thành hình dạng (1,10).
In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
6 là (10,1) được chuyển thành (1,10).
In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
7 trong số này tạo ra một mảng (3,1,10). Chuyển đổi đó là (10,1,3).

Nếu bạn bỏ [] và hình dạng tạo ra (1,10) mảng:

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
3

sẽ tham gia 3 (10,) các mảng để thực hiện (3,10), sau đó chuyển sang (10,3).

Alternatively,

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
4

Tham gia các mảng 3 (1,10) để tạo một (3,10), mà bạn có thể chuyển vị.

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")#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_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, optionalint, 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, optionalndarray, 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 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{‘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àn{‘no’, ‘equiv’, ‘safe’, ‘same_kind’, ‘unsafe’}, optionalresndarray

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

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

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
8

ReturnSresndarray

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
9

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
0

Xem thêm

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
1

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
2

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
3

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
4

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
5

Xếp một chuỗi các mảng dọc theo một trục mới.

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
6

Lắp ráp các mảng từ các khối.

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
7

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
8

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

In [66]: np.stack([x,y,z],axis=1).shape                                                        
Out[66]: (10, 3)
In [67]: np.column_stack([x,y,z]).shape                                                        
Out[67]: (10, 3)
In [68]: np.vstack([x,y,z]).shape                                                              
Out[68]: (3, 10)
9

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

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ạ.

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
7

Ví dụ

In [62]: x,y,z = np.ones((10,),int), np.zeros((10,),int), np.arange(10)                        
In [63]: z.shape                                                                               
Out[63]: (10,)
In [64]: np.array([x,y,z]).shape                                                               
Out[64]: (3, 10)
In [65]: np.array([x,y,z]).T       # transpose                                                            
Out[65]: 
array([[1, 0, 0],
       [1, 0, 1],
       [1, 0, 2],
       [1, 0, 3],
       [1, 0, 4],
       [1, 0, 5],
       [1, 0, 6],
       [1, 0, 7],
       [1, 0, 8],
       [1, 0, 9]])
8

Làm thế nào để bạn tạo một ma trận từ một vector trong Python?

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

Làm thế nào để tạo một vectơ hoặc ma trận trong Python ?..

Bước 1 - Nhập thư viện. Nhập khẩu Numpy dưới dạng NP. ....

Bước 2 - Thiết lập vectơ và ma trận. Chúng tôi đã tạo ra một vectơ và ma trận bằng mảng và chúng tôi sẽ tìm thấy chuyển vị của nó. ....

Làm cách nào để kết hợp hai mảng thành một ma trận trong Python?

Bước 3 - Tính chuyển đổi vectơ và ma trận .. concatenate() to merge the content of two or multiple arrays into a single array. This function takes several arguments along with the NumPy arrays to concatenate and returns a Numpy array ndarray. Note that this method also takes axis as another argument, when not specified it defaults to 0.

Làm thế nào để bạn thêm hai vectơ trong Python?

Chúng ta có thể thêm các vectơ trực tiếp vào Python bằng cách thêm các mảng numpy.Ví dụ xác định hai vectơ với ba phần tử, sau đó thêm chúng lại với nhau.Chạy ví dụ đầu tiên in hai vectơ cha sau đó in một vectơ mới là việc bổ sung hai vectơ.adding NumPy arrays. The example defines two vectors with three elements each, then adds them together. Running the example first prints the two parent vectors then prints a new vector that is the addition of the two vectors.adding NumPy arrays. The example defines two vectors with three elements each, then adds them together. Running the example first prints the two parent vectors then prints a new vector that is the addition of the two vectors.

Làm thế nào để bạn chuyển đổi một danh sách nhiều thành một ma trận trong Python?

Chuyển đổi danh sách thành Matrix trong Python...

Sử dụng một vòng lặp và danh sách cắt để chuyển đổi danh sách thành một mảng hoặc ma trận trong Python ..

Sử dụng hàm mảng () từ thư viện Numpy để chuyển đổi danh sách thành mảng hoặc ma trận trong Python ..

Sử dụng hàm AsArray () từ thư viện Numpy để chuyển đổi danh sách thành một mảng hoặc ma trận trong Python ..