r中的插值函数approx()给出误差 - 需要至少两个非NA值进行插值

时间:2017-06-06 09:47:55

标签: r line gis interpolation

我在Windows 8机器上使用R Studio。我试图在两点之间插入一个点。

x1 = -159.9, y1 = 56.5, 
x2 = -159.9, y2 = 56.3

我以下列方式使用approx()功能(可重现)

approx(c(-159.9,-159.9), c(56.5,56.3), n = 3)

给了我一个错误

Error in approx(c(-159.9, -159.9), c(56.5, 56.3), n = 3) : 
need at least two non-NA values to interpolate

它期待我提供的两个非NA值。

该功能在其他方面完美运行。这就是问题所在。 如果您遇到任何此类错误,请告诉我您是如何解决此问题的?

2 个答案:

答案 0 :(得分:1)

来自?approx()详细信息

  

输入可以包含删除的缺失值,至少是这样   需要两个完整的(x,y)对(方法=“线性”,一个   除此以外)。如果有重复(并列)x值且关系是a   函数它应用于每个不同x值的y值。

答案 1 :(得分:1)

approx函数无法插入x坐标相同的值。

因此,我会解决这个问题如下:

  1. 对x坐标相等的所有情况进行分组,并通过例如中位数,平均值或自定义函数对它们进行聚合
  2. 使用您想要的插值方案,例如approx函数。