拉格朗日多项式:意外的插值结果

时间:2016-05-29 01:15:09

标签: math interpolation discrete-mathematics polynomials

我试图使用第二个拉格朗日polinoomial插入一系列数据点。 具有

y=(x-x2)*(x-x3)/(x1-x2)*(x1-x3)*y1+
  (x-x1)*(x-x3)/(x2-x1)*(x2-x3)*y2+
  (x-x1)*(x-x2)/(x3-x1)*(x3-x2)*y3

和公式

x=7

很明显,二次函数可能不适合数据。这只是一个例子。

但我想知道为什么y=1500的价值出乎意料地高。 如果我没错其 [(u'I', u'O'), (u'met', u'O'), (u'with', u'O'), (u'Alan', u'PERSON'), (u'yesterday', u'O')]

以上公式是否正确?

2 个答案:

答案 0 :(得分:2)

<强>答案:

总结:

  1. 对于相同的x,您不能拥有两个不同的y值;这违反了函数的定义。
  2. 你的公式中缺少括号!不是(x-x2)*(x-x3)/(x1-x2)*(x1-x3),而是((x-x2)*(x-x3)) / ((x1-x2)*(x1-x3))
  3. 返回1&gt;,请注意插值公式在分母中有x3-x2。如果您已绑定值,则将除以0。
  4. 如何在如此小的数据集上进行插值?但是你要求二次插值!
  5. <强>后续:

      

    1)修好了。无意中我切换了所有的x和y值。所以这些点的格式是(y,x)。

    啊,哈哈,难怪。

      

    2)谢谢!括号改进了近似值。关于缺失的括号:我从接受的答案中得到了公式:Best way to find Quadratic Regression Curve in Java,但我不明白这条规则。

    这是着名但基本的插值:拉格朗日插值。您可以在Wolfram mathworld: Lagrange Interpolating Polynomial验证其公式。我没有给你维基百科链接,因为这个看起来更漂亮。

    您找到的链接必须包含拼写错误。由于您已建议进行修改,因此希望它很快就会获得批准。

      

    3)这是一个(显着更大(回答你的第四个问题)时间序列。所以不可能有绑定值。

    是的,时间序列没有绑定值。

答案 1 :(得分:1)

公式应该是正确的。但是当x = 17时,你有两个不同的y值,它可能是麻烦的原因。你可以尝试改变anthor x。