使用numpy和scipy在python中进行最小二乘估计

时间:2015-01-13 12:11:44

标签: python numpy scipy linear-algebra least-squares

scipy和numpy都有最小的平方估计,但在阅读文档后我有点困惑。

所以,我的问题是经典回归,我试图找到两对值之间的最佳矩阵变换。所以形式如下:

Ax = b

在这里,我知道x和b。 A有9个独特的组件,x和b是3D向量。所以,我至少需要3分。所以,3个非共线x和b,我有它们,我可以创建一个3x3连接的x和b向量。

但是,从文档中我看到它是为A和b已知时解决系统而设计的。所以我们解决了x。假设A是可逆的,这意味着:

x = A(-1)b          (-1) indicating the inverse or pseudo inverse.

在我的情况下,解决方案变为

A = b x(-1)

我想知道我是否还能以某种方式使用内置的numpy机器进行设置。

1 个答案:

答案 0 :(得分:3)

看看这个:

Ax = b
x^TA^T = b^T

其中A^T表示A的转置。现在定义符号Ap=x^TXp = A^T以及bp=b^T,您的问题就变成了:

Ap Xp = bp

正是您可以使用最小二乘法处理的形式