Установите один или несколько коэффициентов для определенного целого числа
Я использую стандартную модель lm и хотел бы установить коэффициенты одной или нескольких моих переменных на определенное целое число.
Например, я бы хотел, чтобы коэффициент моих переменных погоды и цены составлял 647 и 15 соответственно.
Я использую lm-функцию со стандартной формулой.
Ближайшие вещи, которые я нашел до сих пор, - это функция смещения в glm или ограничить .rhs внутри systemfit.
Я также рассмотрел вычитание суммарного вклада этих переменных с их набором коэффициентов, но это не очень масштабируемо.
Я знаю все проблемы, задающие коэффициент, но хотел бы сделать это только с исследовательской точки зрения.
Ответы
Ответ 1
Вы можете использовать термин смещения в формуле и включить в него требуемый коэффициент и переменную:
df<-data.frame(aa=1:6,bb=2:7,cc=c(4,2,7,5,8,3))
lm(cc ~ aa + offset(647*bb), data = df)
Итак, это регрессирование cc
на aa
плюс фиксированный термин bb * 647
. Для более чем одного заданного коэффициента добавьте соответствующие дополнительные термины offset()
.