Как сделать линейную интерполяцию для разных дат с помощью функции «прибл.»? - PullRequest
0 голосов
/ 24 мая 2019

У меня есть фрейм данных с тремя измерениями в течение года, и я хотел бы сделать интерполяцию между этими датами, чтобы получать значения каждые два месяца.Я использовал функцию приближения, но я не знаю, как включить значения в правильное положение data.frame.Кто-нибудь может мне помочь?

Я использовал следующий скрипт:

approx(fev17[bloco=1&trat==1],set17[bloco=1&trat==1], method="linear", rule=1, f=0, ties="ordered", yleft = 0, yright = 0, n=32)

Я не понимаю аргумент "xout" функции "ок."

Спасибо!

1 Ответ

0 голосов
/ 24 мая 2019

Аргумент xout указывает сетку вашей оси X, по которой вы хотите выполнить интерполяцию.

Вот пример того, как вы можете это сделать.Допустим, каждые 4 месяца у вас есть следующие данные:

   date <-seq(as.Date("2016/1/1"), as.Date("2019/1/1"), "4 months")
    values <- (rnorm(length(date)))
    df <- data.frame(date, values)
    x <- df$date
    y <- df$values
    plot(x,y, type='b')

enter image description here

Затем вы можете использовать функцию approx, где вы определяете xout как и месячная ось времени того же периода времени, что и x:

df <- approx(x=x,y=y, xout=seq(as.Date("2016/1/1"), as.Date("2019/1/1"), "months"))
plot(df$x, df$y, type="b")

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...