代码之家  ›  专栏  ›  技术社区  ›  Pierreten

r中时间序列数据的插值

  •  -1
  • Pierreten  · 技术社区  · 16 年前

    我不确定这里遗漏了什么,但我基本上是在计算时间序列的插值;当我直接绘制序列时,用“interpolation.date.vector”约束插值点,该图是正确的:

    plot(date.vector,fact.vector,ylab='Quantity')
    lines(spline(date.vector,fact.vector,xout=interpolation.date.vector))
    

    当我计算插值时,将其存储在一个中间变量中,然后绘制结果;我得到一个完全错误的结果:

    intepolated.values <- spline(date.vector,fact.vector,xout=interpolation.date.vector)
    
    plot(intepolated.values$x,intepolated.values$y)
    lines(intepolated.values$x,intepolated.values$y)
    

    lines()函数不需要执行spline()函数来检索插值点吗?

    1 回复  |  直到 12 年前
        1
  •  1
  •   hammady    12 年前

    对于插值,我使用 approx 。 例子:

    inter <- approx(date.vector, fact.vector, xout=interpolation.date.vector)
    inter$x # holds x interpolated values, basically interpolation.date.vector 
    inter$y # holds y interpolated values
    

    缺点是它要么做线性插值,要么做常数插值。

    推荐文章