params_mlogit function

Parameters of a multinomial logit model

Parameters of a multinomial logit model

Store the parameters of a fitted multinomial logistic regression model. The model is used to predict probabilities of KK

classes, which represent the probability of transitioning to particular health state in a discrete time state transition model. Can be used as an element of a params_mlogit_list to parameterize a CohortDtstmTrans object.

params_mlogit(coefs)

Arguments

  • coefs: A 3D array of stacked matrices containing samples of the regression coefficients under sampling uncertainty. May also be a list of objects (e.g., data frames) that can be coerced into matrices with as.matrix(). Each matrix must have the same number of columns and the number of matrices must be equal to K1K-1.

Returns

An object of class params_mlogit, which is a list containing coefs

and n_samples, where n_samples is equal to the number of rows in each element of coefs. The coefs element is always converted into a 3D array of stacked matrices.

Details

Multinomial logit models are used to predict the probability of membership for subject ii in each of KK classes as a function of covariates:

Pr(yi=c)=eβcxik=1Keβkxi Pr(y_i = c) = \frac{e^{\beta_c x_i}}{\sum_{k=1}^K e^{\beta_k x_i}}

Examples

# Consider a sick-sicker model and model transitions from the sick state ## We can instantiate from a list of data frames params <- params_mlogit( coefs = list( ### Transition from sick to sicker sicker = data.frame( intercept = c(-0.33, -.2, -.15), treat = c(log(.75), log(.8), log(.9)) ), ### Transition from sick to death death = data.frame( intercept = c(-1, -1.2, -.5), treat = c(log(.6), log(.65), log(.55)) ) ) ) summary(params) params ## We can also instantiate from an array coefs_sicker <- data.frame( intercept = c(-0.33, -.2, -.15), treat = c(log(.75), log(.8), log(.9)) ) coefs_death <- data.frame( intercept = c(-1, -1.2, -.5), treat = c(log(.6), log(.65), log(.55)) ) params2 <- params_mlogit( coefs <- array( data = c(as.matrix(coefs_sicker), as.matrix(coefs_death)), dim = c(3, 2, 2), dimnames = list(NULL, c("intercept", "treat"), c("sicker", "death")) ) ) params2

See Also

summary.params_mlogit(), params_mlogit_list(), CohortDtstmTrans