Skip to contents

This function controls the text which is printed to the console when one of the core marginalefffects functions is called and the object is returned: predictions(), comparisons(), slopes(), hypotheses(), avg_predictions(), avg_comparisons(), avg_slopes().

All of those functions return standard data frames. Columns can be extracted by name, predictions(model)$estimate, and all the usual data manipulation functions work out-of-the-box: colnames(), head(), subset(), dplyr::filter(), dplyr::arrange(), etc.

Some of the data columns are not printed by default. You can disable pretty printing and print the full results as a standard data frame using the style argument or by applying as.data.frame() on the object. See examples below.

Usage

# S3 method for class 'marginaleffects'
print(
  x,
  style = getOption("marginaleffects_print_style", default = "summary"),
  digits = getOption("marginaleffects_print_digits", default = 3),
  p_eps = getOption("marginaleffects_print_p_eps", default = 0.001),
  topn = getOption("marginaleffects_print_topn", default = 5),
  nrows = getOption("marginaleffects_print_nrows", default = 30),
  ncols = getOption("marginaleffects_print_ncols", default = 30),
  type = getOption("marginaleffects_print_type", default = TRUE),
  column_names = getOption("marginaleffects_print_column_names", default = FALSE),
  ...
)

Arguments

x

An object produced by one of the marginaleffects package functions.

style

"summary", "data.frame", or "tinytable"

digits

The number of digits to display.

p_eps

p values smaller than this number are printed in "<0.001" style.

topn

The number of rows to be printed from the beginning and end of tables with more than nrows rows.

nrows

The number of rows which will be printed before truncation.

ncols

The maximum number of column names to display at the bottom of the printed output.

type

boolean: should the type be printed?

column_names

boolean: should the column names be printed?

...

Other arguments are currently ignored.

Examples

library(marginaleffects)
mod <- lm(mpg ~ hp + am + factor(gear), data = mtcars)
p <- predictions(mod, by = c("am", "gear"))
p
#> 
#>  am gear Estimate Std. Error    z Pr(>|z|)     S 2.5 % 97.5 %
#>   0    3     16.1      0.759 21.2   <0.001 329.6  14.6   17.6
#>   0    4     21.0      1.470 14.3   <0.001 152.1  18.2   23.9
#>   1    4     26.3      1.039 25.3   <0.001 466.1  24.2   28.3
#>   1    5     21.4      1.315 16.3   <0.001 195.2  18.8   24.0
#> 
#> Type: response
#> 

subset(p, am == 1)
#> 
#>  Estimate Std. Error    z Pr(>|z|)     S 2.5 % 97.5 %
#>      26.3       1.04 25.3   <0.001 466.1  24.2   28.3
#>      21.4       1.31 16.3   <0.001 195.2  18.8   24.0
#> 
#> 

print(p, style = "data.frame")
#>   am gear estimate std.error statistic       p.value  s.value conf.low
#> 1  0    3 16.10667 0.7589789  21.22150 6.047015e-100 329.5966 14.61910
#> 2  0    4 21.05000 1.4697592  14.32207  1.592966e-46 152.1370 18.16932
#> 3  1    4 26.27500 1.0392746  25.28206 5.032257e-141 466.0607 24.23806
#> 4  1    5 21.38000 1.3145900  16.26363  1.788354e-59 195.1551 18.80345
#>   conf.high  df
#> 1  17.59424 Inf
#> 2  23.93068 Inf
#> 3  28.31194 Inf
#> 4  23.95655 Inf

data.frame(p)
#>   am gear estimate std.error statistic       p.value  s.value conf.low
#> 1  0    3 16.10667 0.7589789  21.22150 6.047015e-100 329.5966 14.61910
#> 2  0    4 21.05000 1.4697592  14.32207  1.592966e-46 152.1370 18.16932
#> 3  1    4 26.27500 1.0392746  25.28206 5.032257e-141 466.0607 24.23806
#> 4  1    5 21.38000 1.3145900  16.26363  1.788354e-59 195.1551 18.80345
#>   conf.high  df
#> 1  17.59424 Inf
#> 2  23.93068 Inf
#> 3  28.31194 Inf
#> 4  23.95655 Inf