Да, конечно, есть опция weights=
для lm()
, основная функция подгонки линейной модели. Быстрый пример:
R> df <- data.frame(x=1:10)
R> lm(x ~ 1, data=df) ## i.e. the same as mean(df$x)
Call:
lm(formula = x ~ 1, data = df)
Coefficients:
(Intercept)
5.5
R> lm(x ~ 1, data=df, weights=seq(0.1, 1.0, by=0.1))
Call:
lm(formula = x ~ 1, data = df, weights = seq(0.1, 1, by = 0.1))
Coefficients:
(Intercept)
7
R>
поэтому, взвешивая более поздние наблюдения, среднее значение последовательности от 1 до 10 перемещается от 5,5 до 7.