2010-09-28 4 views
3

Я совершенно новой для R и у меня есть следующая проблема:Линейная модель с ограничениями, [R]

У меня есть простой 2-фактор линейной модели:

Rate~factor1 + factor2 //factor1 has 8 categorical values, factor2 has 6 categories; 
model1 <- lm(Rate~factor1+factor2, data=myData) 

И хочу поставить ограничения SUM коэффициентов factor1 = 0, то же самое для фактора 2.

Никто из руководства не дает никакого понятия, как это сделать ..

Я нашел ссылку на аналогичную проблему here но отличается, и я не мог понять, как изменить его ...

+1

Этот вопрос был также задан на сайте обмена статистикой: http://stats.stackexchange.com/questions/3143/ – csgillespie

+0

@csgillespie: спасибо за ссылку. @Vytautas: пожалуйста, не перекрестно. –

+0

Знаете ли вы, как указать ограничение положительности на соответствие? Как сделать так, чтобы конечная функция всегда была положительной независимо от аргументов? – schmi

ответ

2

Это описанной в главе 6 МАССЫ (Современная прикладная статистика с S). Используйте contrasts arg lm (см. Примеры ?contr.sum и ?model.matrix.default).

+0

Большое спасибо. Я попробовал - он не делал сумму коэффициентов = 0, но минимизировал (теперь это 0,2 для 1 фактора и 0,08 для другого) – Vytautas

+0

Есть ли способ принудительно установить условие == 0? – Vytautas

+0

Мой ответ - способ заставить его. Если суммы «0.2» для «factor1» и 0.08 для «factor2», то значение для последнего уровня «factor1» равно -0.2, а значение для последнего уровня «factor2» равно -0,08. Обратите внимание, что в вашем регрессионном выходе отсутствует коэффициент ... Это также указано в ссылке, содержащейся в ответе, который вы приняли на stats.stackexchange.com ... –

Смежные вопросы