Реализация идеи Болкера действительно довольно проста. Это всего лишь вывод результатов первого примера из пакета * * * * * * * * * * * *
require(quantreg)
data(stackloss); fit <- rq(stack.loss ~ Air.Flow, .5, data=stackloss)
with(stackloss, plot(Air.Flow, stack.loss))
abline(a=coef(fit)[1], b=coef(fit)[2])
Однако это не решение "в каждой точке", поэтому рассмотрим такой подход loess
:
fit <-loess(stack.loss ~ Air.Flow, data=stackloss, family="symmetric")
plot(stack.loss ~ Air.Flow, data=stackloss)
with(stackloss, lines(sort(unique(Air.Flow)),
predict(fit, data.frame(Air.Flow=sort(unique(Air.Flow))))))
Это не очень хорошо в значениях x, где есть только одно значение, но кажется, что оно достаточно близко к медиане при использовании опции family = "симметричный".