Прогнозирование значений и стандартного отклонения с помощью лесса

У меня есть диаграмма рассеяния данных (значения x и y). Я хочу рассчитать средневзвешенное значение и стандартное отклонение как функцию X. Затем для каждой из моих точек я хочу рассчитать количество стандартных отклонений от каждого значения от прогнозируемого. В настоящее время я использую функцию loess.sd из пакета msir, поскольку она вычисляет для меня sd. Кто-нибудь знает, как я могу получить прогнозируемый sd для каждой точки данных? Или, возможно, есть альтернативный или лучший способ решения этого расчета? Заранее спасибо.

Мой текущий код:

#... scatter plot of data
plot(xy,ylim=c(0,50),pch=20)
#loess +- 1 sd
std_loess = loess.sd(xy, nsigma =1,span=0.3)
# ... add weighted average to plot
lines(std_loess$x,std_loess$y,col="firebrick2")
# .... add weighted sd to plot
lines(std_loess$x,std_loess$y,col="firebrick2")
#.... get observed data points
lines(std_loess$x,std_loess$upper,col="dodgerblue2")
# ... get expected value for each data point
obs = xy[,2]
# ... get predicted sd for each data point
expected = predict(std_loess$model,data.frame(xy))  
# ...get predicted sd for each data point

exp_sd = ??????????????????

# ...get predicted sd for each data point
sd_away = (obs - expected) / exp_sd

person dougp    schedule 15.02.2013    source источник


Ответы (1)


Возможно (но не проверено из-за отсутствия данных):

exp.fit = expected$fit
# ...get predicted sd for each data point
sd_away = (obs - exp.fit) / expected$se

Результат предсказывания.loess не является вектором, а представляет собой список с несколькими компонентами и прогнозируемыми значениями в компоненте «подгонки».

person IRTFM    schedule 15.02.2013