Если формула имеет LHS, то этот LHS сохраняется во втором компоненте так:
fo <- y ~ x
fo[-2]
## ~x
Обратите внимание, что length(fo)
может различать формулы с LHS и без него.
length(fo)
## [1] 3
length(fo[-2])
## [1] 2
поэтому, если мы не знаем, существует ли LHS, и хотим удалить его, если он есть, то:
if (length(fo) == 3) fo[-2] else fo
## ~x