插值两个给定点之间的新点

时间:2013-11-21 19:20:41

标签: r interpolation

鉴于两点,我如何在这两点之间插值并生成20个点。

例如,要点:

x = c(2,8)
y = c(2,19)

我尝试拟合线性模型,然后使用它来生成点,但是当x值相同时,线性线不适合。

3 个答案:

答案 0 :(得分:10)

可能更容易运行approx(x,y, n=20)

答案 1 :(得分:4)

这很奇怪,因为插入两个点意味着......一条直线?

无论如何,你走了:

> x2<-seq(x[1],x[2],length.out=20)
> x2
 [1] 2.000000 2.315789 2.631579 2.947368 3.263158 3.578947 3.894737 4.210526 4.526316 4.842105
[11] 5.157895 5.473684 5.789474 6.105263 6.421053 6.736842 7.052632 7.368421 7.684211 8.000000
> y2<-seq(y[1],y[2],length.out=20)
> y2
 [1]  2.000000  2.894737  3.789474  4.684211  5.578947  6.473684  7.368421  8.263158  9.157895
[10] 10.052632 10.947368 11.842105 12.736842 13.631579 14.526316 15.421053 16.315789 17.210526
[19] 18.105263 19.000000

答案 2 :(得分:0)

怎么样......

yfrom <- 8
yto <- 19
y <- seq(yfrom, yto, by = ((yto - yfrom)/(20 + 1)))
x <- rep(2, 22)
data.frame(x,y)