Construct an emmGrid object from scratch
This allows the user to incorporate results obtained by some analysis
into an emmGrid object, enabling the use of emmGrid methods
to perform related follow-up analyses.
emmobj(bhat, V, levels, linfct = diag(length(bhat)), df = NA, dffun, dfargs = list(), post.beta = matrix(NA), nesting = NULL, ...)
bhat |
Numeric. Vector of regression coefficients |
V |
Square matrix. Covariance matrix of |
levels |
Named list or vector. Levels of factor(s) that define the
estimates defined by |
linfct |
Matrix. Linear functions of |
df |
Numeric value or function with arguments |
dffun |
Overrides |
dfargs |
List containing arguments for |
post.beta |
Matrix whose columns comprise a sample from the posterior
distribution of the regression coefficients (so that typically, the column
averages will be |
nesting |
Nesting specification as in |
... |
Arguments passed to |
The arguments must be conformable. This includes that the length of
bhat, the number of columns of linfct, and the number of
columns of post.beta must all be equal. And that the product of
lengths in levels must be equal to the number of rows of
linfct. The grid slot of the returned object is generated
by expand.grid using levels as its arguments. So the
rows of linfct should be in corresponding order.
The functions qdrg and emmobj are close cousins, in that
they both produce emmGrid objects. When starting with summary
statistics for an existing grid, emmobj is more useful, while
qdrg is more useful when starting from an unsupported fitted model.
An emmGrid object
qdrg, an alternative that is useful when starting
with a fitted model not supported in emmeans.
# Given summary statistics for 4 cells in a 2 x 2 layout, obtain
# marginal means and comparisons thereof. Assume heteroscedasticity
# and use the Satterthwaite method
levels <- list(trt = c("A", "B"), dose = c("high", "low"))
ybar <- c(57.6, 43.2, 88.9, 69.8)
s <- c(12.1, 19.5, 22.8, 43.2)
n <- c(44, 11, 37, 24)
se2 = s^2 / n
Satt.df <- function(x, dfargs)
sum(x * dfargs$v)^2 / sum((x * dfargs$v)^2 / (dfargs$n - 1))
expt.rg <- emmobj(bhat = ybar, V = diag(se2),
levels = levels, linfct = diag(c(1, 1, 1, 1)),
df = Satt.df, dfargs = list(v = se2, n = n), estName = "mean")
plot(expt.rg)
( trt.emm <- emmeans(expt.rg, "trt") )
( dose.emm <- emmeans(expt.rg, "dose") )
rbind(pairs(trt.emm), pairs(dose.emm), adjust = "mvt")Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.