2013-01-08 20 views
14

Potrzebuję utworzyć model probitowy bez przechwycenia. Jak więc usunąć punkt przecięcia z modelu probit w R?Jak usunąć punkt przecięcia w R

+3

Zobacz 'formula'?. –

+3

Wystarczy dodać '-1' w formule, jak w:' glm (y ~ x1 + x2 - 1, rodzina = dwumianowy (link = "probit"), dane = twoje dane) 'to oszacuje model probit bez przechwycenia. –

Odpowiedz

27

Nie mów jak masz zamiar dopasować model probitowy, ale jeśli używa formuły notacji R do opisania modelu następnie można dostarczać albo + 0 lub - 1 jako część wzoru do stłumienia osią:

mod <- foo(y ~ 0 + x1 + x2, data = bar) 

lub

mod <- foo(y ~ x1 + x2 - 1, data = bar) 

(zarówno przy użyciu Pseudokod R kursu - zastąpić czynność modelu i dane/zmienne).

0.123.

Jeśli jest to model montażu przez glm() następnie coś jak:

mod <- glm(y ~ x1 + x2 - 1, data = bar, family = binomial(link = "probit")) 

powinno wystarczyć (znowu zastępując w danych i nazw zmiennych w stosownych przypadkach).

+1

Czy jest różnica między używaniem + 0 lub -1? –

+1

@NiekdeKlein Nie, bez różnicy, której jestem świadomy –

11

Ponadto, jeśli masz już formułę obiekt, foo, można usunąć z osią update tak:

foo <- y ~ x1 + x2 
bar <- update(foo, ~ . -1) 
# bar == y ~ x1 + x2 - 1