垂直线的最小二乘方程

时间:2010-01-23 20:17:01

标签: least-squares

鉴于以下2d点:

213 106.8

214 189

214 293.4

213 324

223 414

我想找到贯穿它们的最小二乘垂直轴线的方程式。我的计划是得到一个线方程,这样我就可以测试它们到最小二乘线的距离的后续点。

由于

3 个答案:

答案 0 :(得分:6)

严格地说,没有为垂直线定义最小二乘拟合(因为 平行于Y轴测量每个点的误差。)

但是,如果交换X和Y,则可以找到最少的水平线 方块适合。它仅适用于Y坐标值的平均值:

水平线的等式只是y = b。

每个点的误差(x i ,y i )是(y i - b)。

误差的平方和是SSE = sum((y i - b) 2 )。我们希望 找到最小化SSE的b的值。采用SSE的偏导数 尊重b并将其设置为零:

sum(-2(y i - b))= 0

简化,

sum(y i ) - Nb = 0

b = sum(y i )/ N

因此,在您的情况下,对X坐标求平均会得到X坐标 最符合你要点的垂直线。

答案 1 :(得分:2)

最通用的解决方案是应用Total Least Squares

这找到(a,b,d)最小化垂直距离的平方和(ax + by = d(a ^ 2 + b ^ 2 = 1):| ax + by - d |)。这可以处理垂直线,例如0x + 1y = 0。

然而,实施起来有点困难,因此@Jim Lewis提供的解决方案可能会更好,更实用。

答案 2 :(得分:-1)

如果您希望最佳拟合线为垂直线(即x =常数),则y值无关紧要。只需取x值的平方均值的平方根。