Splinefun R: как заставить интерполированные значения быть положительными, получить скорректированное значение и производную для интерполированного х - PullRequest
1 голос
/ 11 июля 2019

Начинающий в R, я выполняю функцию splinefun для значений (x, y).Я ищу, чтобы получить производную функции по x и интерполированные значения y по функции.Также я пытаюсь ограничить функцию значением> 0.Может быть, кто-то уже задавал эти вопросы?

Я выполнил функцию splinefun, и у меня сложилось впечатление, что функция не «сглаживает» значения наблюдаемых (x, y), но проходит именно через эти точки.Это то, как splinefun интерполирует значения, или есть способ ограничить функцию, чтобы "сгладить" (x, y) облако?

С тем, что я сделал, я всегда интерполировал y = y наблюдал / измерял,Есть ли что-то, что можно увидеть с помощью «метода» для интерполяции («fmm», «monoH.FC», ...) или с аргументом «связей»?

Я также пытался получить первыйпроизводная, благодаря аргументу "f (x, Derive = 1)", но я не уверен, что это правильный способ сделать это.

пример кода:

x <- c(1,8,14,21,28,35,42,65)
y <- c(65,30,70,150,40,0,15,0)

splinefun(x, y, method="fmm", ties=mean)

deriv <- f(x, deriv=1) #Get the first derivative
y <- f(x) # Get the interpolated y

Я ищу как:

1) Заставить интерполированную функцию вернуть функцию со значениями только для y> 0 (есть ли аргумент в функции splinefun, которая обрабатывает это?)

2) Получить значения производной интерполированной функции для x (используемой для интерполяции)

3) Получить значения y, интерполированной (отличной от y, которая использовалась для выполнения интерполяции)

Большое спасибо за вашу помощь.

...