Я пытаюсь подобрать модель с использованием лёсса и получаю такие ошибки, как «псевдоинверсия, используемая при 3», «радиус соседства 1» и «взаимное условие номер 0». Вот МВЕ:
x = 1:19
y = c(NA,71.5,53.1,53.9,55.9,54.9,60.5,NA,NA,NA
,NA,NA,178.0,180.9,180.9,NA,NA,192.5,194.7)
fit = loess(formula = y ~ x,
control = loess.control(surface = "direct"),
span = 0.3, degree = 1)
x2 = seq(0,20,.1)
library(ggplot2)
qplot(x=x2
,y=predict(fit, newdata=data.frame(x=x2))
,geom="line")
Я понимаю, что могу исправить эти ошибки, выбрав большее значение диапазона. Однако я пытаюсь автоматизировать эту подгонку, так как у меня есть около 100 000 временных рядов (каждый длиной около 20), подобных этому. Есть ли способ, которым я могу автоматически выбрать значение диапазона, которое предотвратит эти ошибки, но при этом обеспечит достаточно гибкое соответствие данным? Или кто-нибудь может объяснить, что означают эти ошибки? Я немного поковырялся в функциях loess() и simpleLoess(), но сдался в тот момент, когда был вызван код C.