2015-09-22 5 views
-1

Насколько я понимаю, вы можете использовать приближенную функцию для линейной интерполяции. Однако я не мог найти нигде, как кусочно линейно интерполировать пару точек. Например, предположим, что x < -c (1,4,3,2) y < -c (4,3,2,1)кусочно-линейная интерполяция в R

Может ли кто-нибудь дать мне ответ? Большое спасибо заблаговременно

+0

Позвольте мне разъяснить вам. Когда я имею в виду «пару точек», это означает (1,4) – BJKIM

+0

Позвольте мне пояснить вам. Когда я имею в виду «пару точек», это означает, что есть 4 точки. они равны соответственно: p1 = (1,4), p2 (4,3), p (3,2), P (2,1) Что я хотел бы сделать, это подключить P1 и P2, а P2 и P3 , P3 и P4 в кусочно-линейно интерполированных (скажем, 50 точках) так, что интерполированные точки должны последовательно следовать по пути от P1 => P2 => P3 => P4. Итак, ожидаемая форма, когда вы планируете, должна выглядеть как «>» вместо формы «V», как вы предложили. – BJKIM

ответ

1

Я не уверен, что такое «пара пунктов», о которой вы говорите. Но вы можете использовать функцию approx() на пару векторов, которые вы предоставляете.

x <- c(1, 4, 3, 2) 
y <- c(4, 3, 2, 1) 
interp <- approx(x, y) 
plot(x, y, pch=16, cex=2) 
points(interp, col="red") 
Смежные вопросы