Как извлечь наклон бфаст объекта
У меня есть вопрос, касающийся результата функции bfast в R. Предположим, у меня есть временной ряд, в котором разрыв не обнаружен.
library(bfast)
library(zoo)
NDVI <- as.ts(zoo(som$NDVI.b,som$Time))
NDVI_w <- window(NDVI, c(2001, 4) , c(2008, 13))
fit <- bfast(NDVI_w, h=1/2, season="dummy", max.iter=1)
plot(fit)
Как извлечь значение наклона компонента тренда из объекта bfast (fit)? Опция 'plot' с ANOVA=TRUE не работает.
plot(fit, ANOVA=TRUE)$slope
Одним из вариантов может быть его вычисление на основе предоставленного компонента тренда, но есть ли способ получить его непосредственно из объекта 'fit'?
out <- fit$output[[1]]
plot(out$Tt)
lm(out$Tt ~ time(out$Tt))$coefficients[2]
Любой намек более чем оценен.
1 ответ
Решение
Вы уже выяснили (предположительно из файла справки), что компонент тренда дается fit$output[[1]]$Tt
,
Вы говорите, что хотите "значение наклона компонента тренда". Просто возьмите наклон из первых двух значений тренда:diff(fit$output[[1]]$Tt[1:2])/diff(time(fit$output[[1]]$Tt)[1:2])
,