2013-11-21 161 views
3

給定兩點,如何在這兩點之間插值並生成20個點。在兩個給定點之間插值新點

例如,要點:

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

我試圖適應的線性模型,然後使用該生成的點,但當x值是相同的,直鏈線不能配合。

+0

插值兩點....你的意思是一條直線? –

+0

我很好奇你對線性模型的評論...... lm(x〜y)'很好。 – TWL

+0

除上述例子。什麼方程式適合無窮大斜率? – StanLe

回答

3

這很奇怪,因爲插入兩點意味着......一條直線?

總之,在這裏你去:

> 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 
+0

出於某種原因,我不認爲在y維上做同樣的事情。謝謝。 – StanLe

0

......怎麼

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

「by」參數中的除數不應該是「20 - 1」,而應該是「20 + 1」? –

10

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

相關問題