| emmeans_tidiers {broom} | R Documentation |
Tidiers for estimated marginal means objects, which report the predicted
means for factors or factor combinations in a linear model. This
covers three classes:
emmGrid, lsmobj, and ref.grid. (The first class is from the emmeans
package, and is the successor to the latter two classes, which have slightly different
purposes within the lsmeans package but have similar output).
## S3 method for class 'lsmobj' tidy(x, conf.level = 0.95, ...) ## S3 method for class 'ref.grid' tidy(x, ...) ## S3 method for class 'emmGrid' tidy(x, ...)
x |
"emmGrid", lsmobj", or "ref.grid" object |
conf.level |
Level of confidence interval, used only for
|
... |
Extra arguments, passed on to summary.emmGrid or summary.ref.grid |
There are a large number of arguments that can be
passed on to summary.emmGrid or summary.ref.grid.
By broom convention, we use conf.level to pass the level argument.
A data frame with one observation for each estimated mean, and one column for each combination of factors, along with the following variables:
estimate |
Estimated least-squares mean |
std.error |
Standard error of estimate |
df |
Degrees of freedom |
conf.low |
Lower bound of confidence interval |
conf.high |
Upper bound of confidence interval |
When the input is a contrast, each row will contain one estimated contrast, along with some of the following columns:
level1 |
One level of the factor being contrasted |
level2 |
Second level |
contrast |
In cases where the contrast is not made up of two levels, describes each |
statistic |
T-ratio statistic |
p.value |
P-value |
if (require("emmeans", quietly = TRUE)) {
# linear model for sales of oranges per day
oranges_lm1 <- lm(sales1 ~ price1 + price2 + day + store, data = oranges)
# reference grid; see vignette("basics", package = "emmeans")
oranges_rg1 <- ref_grid(oranges_lm1)
td <- tidy(oranges_rg1)
head(td)
# marginal averages
marginal <- emmeans(oranges_rg1, "day")
tidy(marginal)
# contrasts
tidy(contrast(marginal))
tidy(contrast(marginal, method = "pairwise"))
# plot confidence intervals
library(ggplot2)
ggplot(tidy(marginal), aes(day, estimate)) +
geom_point() +
geom_errorbar(aes(ymin = conf.low, ymax = conf.high))
# by multiple prices
by_price <- emmeans(oranges_lm1, "day", by = "price2",
at = list(price1 = 50, price2 = c(40, 60, 80),
day = c("2", "3", "4")) )
by_price
tidy(by_price)
ggplot(tidy(by_price), aes(price2, estimate, color = day)) +
geom_line() +
geom_errorbar(aes(ymin = conf.low, ymax = conf.high))
}