首页 > 解决方案 > numpy 将矩阵转换为向量并将它们组合起来

问题描述

我有两个矩阵

a=[[1,2],[3,4]]
b=[[5,6],[7,8]]

我想制作一个矩阵,其中左列是 a 的元素,右列是 b 的元素

c=[[1,5],[2,6],[3,7],[4,8]]

我的直觉是,要做到这一点,矩阵需要变成向量


编辑:

我不确定我关心的矩阵在这个玩具示例之外的类型 - 并且无法使用给出的答案来处理我的矩阵。

我的矩阵来自代码:

#axes 3d wants me to generate 2 matrixes to map onto a wire plot 
x_grid  = np.arange(100, 1000, 100)
y_grid  = np.arange(300, 30000, 100)
x_grid2 = np.matlib.repmat(x_grid,len(x_grid),1)
y_grid2 = np.matlib.repmat(y_grid,len(y_grid),1)

其中 x_grid2 和 y_grid2 代替了玩具示例中的 a 和 b。我的直觉是它们应该是 np 数组 - 但是在出现错误并查看文档后我不确定

标签: numpy

解决方案


另一种可能的解决方案:

import numpy as np

a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

c = np.array([a.flatten(), b.flatten()]).T

print(c)
# [[1 5]
#  [2 6]
#  [3 7]
#  [4 8]]

推荐阅读