This function supports parsing
parseFormula(form, require.groups = FALSE, require.two.sided = FALSE)
| form | the formula to extract into its parts |
|---|---|
| require.groups | is it an error not to have groups? |
| require.two.sided | is it an error to have a one-sided formula? |
A parseFormula class list with elements of
The left~right side of the model (excluding groups)
The call for the left hand side
The call for the right hand side (excluding groups)
The call for the groups
A formula form of the groups
The original formula's environment
This function extracts the left hand side (lhs), right hand
side (rhs), groups (groups and as a formula,
grpFormula), the environment (env, and the original
left/right hand side of the model (model).
This function borrows heavily from the parseGroupFormula
function in the doBy package.
Other Formula parsing:
findOperator(),
formula.parseFormula()
parseFormula("a~b", require.groups=FALSE)#> $model #> a ~ b #> <environment: 0x55f5c1449d00> #> #> $lhs #> a #> #> $rhs #> b #> #> $groups #> NULL #> #> $groupFormula #> NULL #> #> $env #> <environment: 0x55f5c1449d00> #> #> attr(,"class") #> [1] "parseFormula" "list"## parseFormula("a~b", require.groups=TRUE) # This is an error parseFormula("a~b|c")#> $model #> a ~ b #> <environment: 0x55f5c30b2650> #> #> $lhs #> a #> #> $rhs #> b #> #> $groups #> c #> #> $groupFormula #> ~c #> <environment: 0x55f5c30b2650> #> #> $env #> <environment: 0x55f5c30b2650> #> #> attr(,"class") #> [1] "parseFormula" "list"parseFormula("a~b|c")$groups#> c