7
mam ramkę danych i wzór przechowywane w zmiennych:usunąć zmiennej z RHS od wzoru, który ma punkt
> d <- data.frame(cls=1, foo=2, bar=3)
> f <- formula(cls ~ .)
ja chce usunąć jedną zmienną z RHS tego wzoru programowo (In mój kod, nazwa tej zmiennej zostanie przekazana gdzieś jako ciąg). Próbowałem za pomocą update.formula
:
> update(f, .~.-foo)
Error in terms.formula(tmp, simplify = TRUE) :
'.' in formula and no 'data' argument
Potem próbowałem zapewniając data
argument:
> update(f, .~.-foo, data=d)
Error in terms.formula(tmp, simplify = TRUE) :
'.' in formula and no 'data' argument
wiem wyżej będzie działać jeśli początkowa formuła nie mają kropki po prawej stronie:
> f <- formula(cls ~ foo + bar)
> update(f, .~.-foo)
cls ~ bar
Jak usunąć zmienną z RHS wzoru, jeśli nie mogę zagwarantować, że RHS nie zawiera kropki?
działa to w kontekście 'lm()'. Jestem zaskoczony, że tu nie działa. –