svymultinom uses the withReplicates function to compute the replicate-based estimate of the variance-covariance matrix of coefficients for a multinomial regression fitted by multinom.

svymultinom(formula = NULL, weights = NULL, data = NULL)

# S3 method for svymultinom
coef(object, ...)

# S3 method for svymultinom
vcov(object, ...)

# S3 method for svymultinom
formula(x, ...)

# S3 method for svymultinom
predict(object, ...)

# S3 method for svymultinom
model.frame(formula, ...)

# S3 method for svymultinom
print(x, ...)

# S3 method for svymultinom
summary(object, ...)

# S3 method for summary.svymultinom
print(x, digits = 4, ...)

# S3 method for svymultinom
update(object, ..., evaluate = TRUE)

Arguments

formula

regression formula

weights

weights for regression

data

dataset for regression

object

an object of class 'svymultinom'

...

additional arguments

x

an object of class 'svymultinom'

digits

minimal number of significant digits. See print.default.

evaluate

a logical value. If TRUE, the updated call is evaluated. Default is TRUE.

Value

An object of class svymultinom is returned:

call

the function call,

NAIVEreg

the naive multinomial regression object,

vcov

the replicate-based estimate of the variance-covariance matrix of coefficients,

...

Methods (by generic)

  • coef: Extract coefficients

  • vcov: Extract the var-cov matrix of coefficients

  • formula: Extract the regression formula

  • predict: Predict with new data

  • model.frame: Extract the model frame

  • print: Print results of svymultinom nicely

  • summary: Summarize results of svymultinom nicely

  • print: Print summary of svymultinom nicely

  • update: Update svymultinom

See also

Examples

if (FALSE) { rm(list=ls()) library(CMAverse) # multinom n <- 1000 x1 <- rnorm(n, mean = 0, sd = 1) x2 <- rnorm(n, mean = 1, sd = 1) x3 <- rbinom(n, size = 1, prob = 0.4) linearpred1 <- 1 + 0.3 * x1 - 0.5 * x2 - 0.2 * x3 linearpred2 <- 2 + 1 * x1 - 2 * x2 - 1 * x3 py2 <- exp(linearpred1) / (1 + exp(linearpred1) + exp(linearpred2)) py3 <- exp(linearpred2) / (1 + exp(linearpred1) + exp(linearpred2)) py1 <- 1 - py2 - py3 y <- sapply(1:n, function(x) sample(size = 1, c(1:3), prob = c(py1[x], py2[x], py3[x]))) w <- ifelse(x3 == 0, 0.4, 0.6) data <- data.frame(x1 = x1, x2 = x2, x3 = x3, y = y) reg <- svymultinom(y ~ x1 + x2 + x3, weights = w, data = data) coef(reg) vcov(reg) formula(reg) predict(reg, newdata = data[1, ], type = "probs") model.frame(reg) summary(reg) update(reg, weights = w[1:500], data = data[1:500, ]) }