2015-10-22 2 views
0

Эта функция ниже делает хорошую работу для интерполяции сплайнов, но мне интересно, как я могу ее изменить, чтобы сделать линейную интерполяцию!Преобразование сплайн-интерполяции в линейную интерполяцию?

## Function to interpolate using spline 
    imageSpline = function(x, y, xout, method = "natural", ...){ 
    x.max = max(xout) 
    x.spline = spline(x = x, y = y, xout = xout, method = method, ...) 
    x.spline 
    } 

ответ

2

См ?approx для approx() и approxFun(). Это линейные интерполяционные аналоги к spline() и splineFun().

В зависимости от деталей линейной интерполяции вы хотите выполнить (см ?approx для деталей и вещей подправить), это может быть столь же просто, как:

imageApprox <- function(x, y, xout, ...) { 
    x.linear <- approx(x = x, y = y, xout = xout, ...) 
    x.linear 
} 
+0

@temor Нет, извините; которая теперь исправлена. Извините, что ... (я ленился) –

+0

Не то, чтобы я мог видеть; 'approx' работает так же, как' spline', возвращая '$ x' и' $ y компоненты. Это должна быть замена плагина для вашего кода с помощью 'spline()'. –

Смежные вопросы