## ---- echo = FALSE, results = "hide", message = FALSE------------------------- require("emmeans") knitr::opts_chunk$set(fig.width = 4.5, class.output = "ro") ## ---- echo = FALSE------------------------------------------------------------ par(mar = .1 + c(4, 4, 1, 1)) # reduce head space ## ----------------------------------------------------------------------------- with(pigs, interaction.plot(percent, source, conc)) ## ----------------------------------------------------------------------------- with(pigs, tapply(conc, percent, mean)) ## ----------------------------------------------------------------------------- cell.means <- matrix(with(pigs, tapply(conc, interaction(source, percent), mean)), nrow = 3) cell.means ## ----------------------------------------------------------------------------- apply(cell.means, 2, mean) ## ----------------------------------------------------------------------------- with(pigs, table(source, percent)) ## ----------------------------------------------------------------------------- sum(c(3, 1, 1) * cell.means[, 4]) / 5 ## ----------------------------------------------------------------------------- pigs.lm1 <- lm(log(conc) ~ source + factor(percent), data = pigs) ## ----------------------------------------------------------------------------- ref_grid(pigs.lm1) ## ----------------------------------------------------------------------------- ref_grid(pigs.lm1) @ grid ## ----------------------------------------------------------------------------- pigs.lm2 <- lm(log(conc) ~ source + percent, data = pigs) ref_grid(pigs.lm2) ## ----------------------------------------------------------------------------- ref_grid(pigs.lm2) @ grid ## ----------------------------------------------------------------------------- pigs.pred1 <- matrix(predict(ref_grid(pigs.lm1)), nrow = 3) pigs.pred1 ## ----------------------------------------------------------------------------- apply(pigs.pred1, 1, mean) ### EMMs for source apply(pigs.pred1, 2, mean) ### EMMs for percent ## ----------------------------------------------------------------------------- predict(ref_grid(pigs.lm2)) ## ----------------------------------------------------------------------------- emmeans(pigs.lm1, "percent") ## ----------------------------------------------------------------------------- ref_grid(pigs.lm2, cov.keep = "percent") ## ----------------------------------------------------------------------------- ref_grid(pigs.lm2, cov.reduce = range) ## ----------------------------------------------------------------------------- mtcars.lm <- lm(mpg ~ disp * cyl, data = mtcars) ref_grid(mtcars.lm) ## ----------------------------------------------------------------------------- mtcars.rg <- ref_grid(mtcars.lm, cov.keep = 3, at = list(disp = c(100, 200, 300))) mtcars.rg ## ----------------------------------------------------------------------------- mtcars.1 <- lm(mpg ~ factor(cyl) + disp + I(disp^2), data = mtcars) emmeans(mtcars.1, "cyl") ## ----------------------------------------------------------------------------- mtcars <- transform(mtcars, Cyl = factor(cyl), dispsq = disp^2) mtcars.2 <- lm(mpg ~ Cyl + disp + dispsq, data = mtcars) emmeans(mtcars.2, "Cyl") ## ----------------------------------------------------------------------------- ref_grid(mtcars.1) ref_grid(mtcars.2) ## ----------------------------------------------------------------------------- emmeans(mtcars.2, "Cyl", at = list(dispsq = 230.72^2)) ## ---- eval = FALSE------------------------------------------------------------ # deg <- 2 # mod <- lm(y ~ treat * poly(x, degree = deg), data = mydata) ## ---- eval = FALSE------------------------------------------------------------ # emmeans(mod, ~ treat | x, at = list(x = 1:3), params = "deg") ## ----------------------------------------------------------------------------- emmip(pigs.lm1, source ~ percent) emmip(ref_grid(pigs.lm2, cov.reduce = FALSE), source ~ percent) ## ----------------------------------------------------------------------------- plot(mtcars.rg, by = "disp") ## ----------------------------------------------------------------------------- mtcars.rg_d.c <- ref_grid(mtcars.lm, at = list(cyl = c(4,6,8)), cov.reduce = disp ~ cyl) mtcars.rg_d.c @ grid ## ----fig.height = 1.5--------------------------------------------------------- plot(mtcars.rg_d.c) ## ----------------------------------------------------------------------------- require("ggplot2") emmip(pigs.lm1, ~ percent | source, CIs = TRUE) + geom_point(aes(x = percent, y = log(conc)), data = pigs, pch = 2, color = "blue") ## ---- eval = FALSE------------------------------------------------------------ # ci <- confint(mtcars.rg_d.c, level = 0.90, adjust = "scheffe") # xport <- print(ci, export = TRUE) # cat("\n") # knitr::kable(xport$summary, align = "r") # for (a in xport$annotations) cat(paste(a, "
")) # cat("
\n") ## ---- results = "asis", echo = FALSE------------------------------------------ ci <- confint(mtcars.rg_d.c, level = 0.90, adjust = "scheffe") xport <- print(ci, export = TRUE) cat("\n") knitr::kable(xport$summary, align = "r") for (a in xport$annotations) cat(paste(a, "
")) cat("
\n") ## ----------------------------------------------------------------------------- emmeans(pigs.lm1, "percent", weights = "cells") ## ----------------------------------------------------------------------------- pigs.lm3 <- lm(log(conc) ~ factor(percent), data = pigs) emmeans(pigs.lm3, "percent") ## ----------------------------------------------------------------------------- MOats.lm <- lm (yield ~ Block + Variety, data = MOats) ref_grid (MOats.lm, mult.name = "nitro") ## ----------------------------------------------------------------------------- pigs.rg <- ref_grid(pigs.lm1) class(pigs.rg) pigs.emm.s <- emmeans(pigs.rg, "source") class(pigs.emm.s) ## ----------------------------------------------------------------------------- pigs.rg pigs.emm.s ## ----------------------------------------------------------------------------- str(pigs.emm.s) ## ----------------------------------------------------------------------------- # equivalent to summary(emmeans(pigs.lm1, "percent"), level = 0.90, infer = TRUE)) emmeans(pigs.lm1, "percent", level = 0.90, infer = TRUE) ## ----------------------------------------------------------------------------- class(summary(pigs.emm.s))