Я изо всех сил пытаюсь получить максимальное значение переменной за последний год наблюдений (не каждый год!) И реализовать его для каждой строки (наблюдение).
Я думаю, что лучший способ сделать это - использовать функцию rollapply, но я не могу понять, как должна выглядеть ширина, поскольку она может различаться для каждого наблюдения (каждое наблюдение представляет день, но не во все дни есть наблюдения). Я знаю, что использование списка приведет к значениям смещения, так как же эти значения должны выглядеть?
Код, который я получил:
mutate(data,"Feature"=rollapplyr(variable,list(0,"Go back one year"),max,fill=NA))
Пример для пояснения: в строке указана дата 31.08.2016. Я хочу, чтобы новый столбец (с использованием пакета mutate dplyr) отображал в этой строке максимальное значение variable
с 31/8/2015 по 31/8/2016 (эта строка).
Для тех, кто хочет пойти дальше: вместо отображения значения variable
отображайте TRUE
или FALSE
(или 1
/ 0
), когда рассчитанный максимум variable
превышает пороговое значение.