## Not run:
# # Now fit the models. Note that both models share the same predictors
# # and only differ in their dependent variable. See examples of stepwise
# # models below at the end.
# library(sjmisc)
# data(efc)
#
# # fit first model
# fit1 <- lm(barthtot ~ c160age + c12hour + c161sex + c172code, data = efc)
# # fit second model
# fit2 <- lm(neg_c_7 ~ c160age + c12hour + c161sex + c172code, data = efc)
#
# # create and open HTML-table in RStudio Viewer Pane or web browser
# # note that we don't need to specify labels for the predictors,
# # because these are automatically read
# sjt.lm(fit1, fit2)
#
# # create and open HTML-table in RStudio Viewer Pane or web browser
# # in the following examples, we set labels via argument
# sjt.lm(fit1, fit2,
# depvar.labels = c("Barthel-Index", "Negative Impact"),
# pred.labels = c("Carer's Age", "Hours of Care",
# "Carer's Sex", "Educational Status"))
#
# # use vector names as labels
# sjt.lm(fit1, fit2, pred.labels = "")
#
# # show HTML-table, indicating p-values as asterisks
# sjt.lm(fit1, fit2, show.std = TRUE, p.numeric = FALSE)
#
# # create and open HTML-table in RStudio Viewer Pane or web browser,
# # integrate CI in estimate column
# sjt.lm(fit1, fit2, separate.ci.col = FALSE)
#
# # show HTML-table, indicating p-values as numbers
# # and printing CI in a separate column
# sjt.lm(fit1, fit2, show.std = TRUE)
#
# # show HTML-table, indicating p-values as stars
# # and integrate CI in estimate column
# sjt.lm(fit1, fit2, show.std = TRUE, ci.hyphen = " to ",
# minus.sign = "−", p.numeric = FALSE,
# separate.ci.col = FALSE)
#
# # ----------------------------------
# # connecting two html-tables
# # ----------------------------------
# # fit two more models
# fit3 <- lm(tot_sc_e ~ c160age + c12hour + c161sex + c172code, data=efc)
# fit4 <- lm(e42dep ~ c160age + c12hour + c161sex + c172code, data=efc)
#
# # create and save first HTML-table
# part1 <- sjt.lm(fit1, fit2)
#
# # create and save second HTML-table
# part2 <- sjt.lm(fit3, fit4)
#
# # browse temporary file
# htmlFile <- tempfile(fileext=".html")
# write(sprintf("<html><head>%s</head><body>%s<p></p>%s</body></html>",
# part1$page.style, part1$page.content, part2$page.content),
# file = htmlFile)
# viewer <- getOption("viewer")
# if (!is.null(viewer)) viewer(htmlFile) else utils::browseURL(htmlFile)
#
# # ----------------------------------
# # User defined style sheet
# # ----------------------------------
# sjt.lm(fit1, fit2,
# CSS = list(css.table = "border: 2px solid;",
# css.tdata = "border: 1px solid;",
# css.depvarhead = "color:#003399;"))
#
# # ----------------------------------
# # automatic grouping of predictors
# # ----------------------------------
# library(sjmisc)
# data(efc)
#
# # make education categorical
# efc$c172code <- to_factor(efc$c172code)
#
# # fit first model again (with c172code as factor)
# fit1 <- lm(barthtot ~ c160age + c12hour + c172code + c161sex, data=efc)
# # fit second model again (with c172code as factor)
# fit2 <- lm(neg_c_7 ~ c160age + c12hour + c172code + c161sex, data=efc)
#
# # plot models, but group by predictors
# sjt.lm(fit1, fit2, group.pred = TRUE)
#
# # ----------------------------------------
# # compare models with different predictors
# # ----------------------------------------
# library(sjmisc)
# data(efc)
#
# # make education categorical
# efc$c172code <- to_factor(efc$c172code)
# # make education categorical
# efc$e42dep <- to_factor(efc$e42dep)
#
# # fit first model
# fit1 <- lm(neg_c_7 ~ c160age + c172code + c161sex, data = efc)
# # fit second model
# fit2 <- lm(neg_c_7 ~ c160age + c172code + c161sex + c12hour, data = efc)
# # fit second model
# fit3 <- lm(neg_c_7 ~ c160age + c172code + e42dep + tot_sc_e, data = efc)
#
# sjt.lm(fit1, fit2, fit3)
#
# # ----------------------------------------
# # compare models with different predictors
# # and grouping
# # ----------------------------------------
# # make cope-index categorical
# efc$c82cop1 <- to_factor(efc$c82cop1)
# # fit another model
# fit4 <- lm(neg_c_7 ~ c160age + c172code + e42dep + tot_sc_e + c82cop1,
# data = efc)
#
# sjt.lm(fit1, fit2, fit4, fit3)
#
# # show standardized beta only
# sjt.lm(fit1, fit2, fit4, fit3, show.est = FALSE, show.std = TRUE,
# show.aic = TRUE, show.fstat = TRUE)
#
# # -----------------------------------------------------------
# # color insanity. just to show that each column has an own
# # CSS-tag, so - depending on the stats and values you show -
# # you can define column spaces / margins, border etc. to
# # visually separate your models in the table
# # -----------------------------------------------------------
# sjt.lm(fit1, fit2, fit4, fit3, show.std = TRUE, show.aic = TRUE,
# show.fstat = TRUE, show.se = TRUE,
# CSS = list(css.modelcolumn1 = 'color:blue;',
# css.modelcolumn2 = 'color:red;',
# css.modelcolumn3 = 'color:green;',
# css.modelcolumn4 = 'color:#ffff00;',
# css.modelcolumn5 = 'color:#777777;',
# css.modelcolumn6 = 'color:#3399cc;',
# css.modelcolumn7 = 'color:#cc9933;'))
#
# sjt.lm(fit1, fit2, fit4, fit3, show.est = FALSE, show.std = TRUE,
# p.numeric = FALSE, group.pred = FALSE,
# CSS = list(css.modelcolumn4 = 'border-left:1px solid black;',
# css.modelcolumn5 = 'padding-right:50px;'))## End(Not run)
Run the code above in your browser using DataLab