У меня есть диаграмма рассеяния данных (значения 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