Python 如何使用numpy解线性方程组?
我有一个矩阵形式的线性方程组:Python 如何使用numpy解线性方程组?,python,numpy,linear-algebra,Python,Numpy,Linear Algebra,我有一个矩阵形式的线性方程组: A * X = b 假设我知道A和X我可以计算b矩阵。现在的问题是b应该包含相同的列(b是N3D点的矩阵,其中该列表示点坐标),但它们彼此不同,所以我想找到这样的b列(单个3D点)如果我计算给定的A和b(单个3D点)的X,这将最小化MSE 如何使用numpy来实现这一点?一般来说,np.pinv(A)@b是MSE意义上的线性系统的解决方案;但您可能需要将系统转换为传统形式,例如b应该是一个列向量,例如大小为3*N。@bubble我相信b已经是(3,N)(即点是一
A * X = b
假设我知道A
和X
我可以计算b
矩阵。现在的问题是b
应该包含相同的列(b
是N
3D点的矩阵,其中该列表示点坐标),但它们彼此不同,所以我想找到这样的b
列(单个3D点)如果我计算给定的A
和b
(单个3D点)的X
,这将最小化MSE
如何使用numpy来实现这一点?一般来说,np.pinv(A)@b
是MSE意义上的线性系统的解决方案;但您可能需要将系统转换为传统形式,例如b应该是一个列向量,例如大小为3*N。@bubble我相信b已经是(3,N)(即点是一个列)。我的意思是b的形状是(3*N,1);在你的例子中,b的形状是(3,N);您需要将系统转换为传统形式,例如使用b=np.ravel(b,order='F')
并相应地重新构造方程的右侧部分。通常,np.pinv(A)@b
是MSE意义上的线性系统解;但您可能需要将系统转换为传统形式,例如b应该是一个列向量,例如大小为3*N。@bubble我相信b已经是(3,N)(即点是一个列)。我的意思是b的形状是(3*N,1);在你的例子中,b的形状是(3,N);您需要将系统转换为传统形式,例如使用b=np.ravel(b,order='F')
并相应地重新构造等式的正确部分。