Skip to contents

It will also identify interaction terms and intercept(s).

Usage

model_identify_variables(model)

# Default S3 method
model_identify_variables(model)

# S3 method for class 'lavaan'
model_identify_variables(model)

# S3 method for class 'aov'
model_identify_variables(model)

# S3 method for class 'clm'
model_identify_variables(model)

# S3 method for class 'clmm'
model_identify_variables(model)

# S3 method for class 'gam'
model_identify_variables(model)

# S3 method for class 'model_fit'
model_identify_variables(model)

# S3 method for class 'logitr'
model_identify_variables(model)

Arguments

model

(a model object, e.g. glm)
A model object.

Value

A tibble with four columns:

  • term: coefficients of the model

  • variable: the corresponding variable

  • var_class: class of the variable (cf. stats::.MFclass())

  • var_type: "continuous", "dichotomous" (categorical variable with 2 levels), "categorical" (categorical variable with 3 or more levels), "intercept" or "interaction"

  • var_nlevels: number of original levels for categorical variables

Examples

df <- Titanic |>
  dplyr::as_tibble() |>
  dplyr::mutate(Survived = factor(Survived, c("No", "Yes")))
glm(
  Survived ~ Class + Age * Sex,
  data = df, weights = df$n,
  family = binomial
) |>
  model_identify_variables()
#> # A tibble: 7 × 5
#>   term             variable var_class var_nlevels var_type   
#>   <chr>            <chr>    <chr>           <int> <chr>      
#> 1 (Intercept)      NA       NA                 NA intercept  
#> 2 Class2nd         Class    character           4 categorical
#> 3 Class3rd         Class    character           4 categorical
#> 4 ClassCrew        Class    character           4 categorical
#> 5 AgeChild         Age      character           2 dichotomous
#> 6 SexMale          Sex      character           2 dichotomous
#> 7 AgeChild:SexMale Age:Sex  NA                 NA interaction

iris |>
  lm(
    Sepal.Length ~ poly(Sepal.Width, 2) + Species,
    data = _,
    contrasts = list(Species = contr.sum)
  ) |>
  model_identify_variables()
#> # A tibble: 5 × 5
#>   term                  variable    var_class var_nlevels var_type   
#>   <chr>                 <chr>       <chr>           <int> <chr>      
#> 1 (Intercept)           NA          NA                 NA intercept  
#> 2 poly(Sepal.Width, 2)1 Sepal.Width nmatrix.2          NA continuous 
#> 3 poly(Sepal.Width, 2)2 Sepal.Width nmatrix.2          NA continuous 
#> 4 Species1              Species     factor              3 categorical
#> 5 Species2              Species     factor              3 categorical