ordprob.mple {PLordprob} | R Documentation |
Maximum Pairwise Likelihood Estimation
Description
Estimate the parameters of a multivariate ordered probit model maximizing the pairwise log-likelihood function.
Usage
ordprob.mple(y, x = NULL, K, start.par = list(type = "default"),
same.means = FALSE, eval.max = 1000, iter.max = 600, ...)
Arguments
y |
matrix with n rows and q columns containing the categorical responses. Each line is a vector of size q representing the responses for a single statistical unit. |
x |
additional n times p matrix of subject specific covariates. |
K |
Number of levels of the categorical responses. |
start.par |
list containing parameters for the maximization algorithm:
|
same.means |
logical. If codeTRUE all the q variable are assumed to have the same mean. |
eval.max |
see |
iter.max |
see |
... |
additional arguments to be passed. |
Details
The code is implemented in R software with call to C functions for the most demanding operations. To evaluate the Gaussian integrals, the package uses the Fortran 77 subroutine SADMVN. The default choice of initialization is the first threshold equal to zero and the remaining thresholds equally spaced with distance one. As for the covariance components, we consider as starting values the sample covariances of the observed categorical variables treated as continuous. Optimization of the pairwise log-likelihood function is performed via quasi-Newton box-constrained optimization algorithm, as implemented in nlminb
.
Value
A list with components:
par |
The best set of parameters found. |
objective |
The value of the negative pairwise likelihood corresponding to |
convergence |
An integer code. 0 indicates successful convergence. |
message |
A character string giving any additional information returned by the optimizer, or |
iterations |
Number of iterations performed. |
evaluations |
Number of objective function and gradient function evaluations. |
thresh |
The set of thresholds partitioning the latent sample space. |
xi |
Vector of the item means. |
cor |
Estimated polychoric correlation matrix. |
References
Cox D. R. , Reid N. (2004) A note on pseudolikelihood constructed from marginal densities. Biometrika, 91, 729–737.
Genz A. (1992) Numerical computation of multivariate normal probabilities. Journal of computational and graphical statistics, 2, 141–149.
Kenne Pagui, E. C. and Canale, A. (2014) Pairwise likelihood inference for multivariate categorical responses, Technical Report, Department of Statistics, University of Padua.
Lindsay B. (1988) Composite likelihood methods. Comtemporary Mathematics, 80, 221–240.
Examples
library(mnormt)
## Not run: # constrained polychoric correlation matrix
sigma <- matrix(0.6,5,5)
diag(sigma) <- 1
set.seed(123)
y <- rmnorm(50, varcov=0.5*sigma)
y <- floor(y)+3
fit <- ordprob.mple(y, K=4, same.mean=TRUE)
#polychoric correlations
fit$cor
# unconstrained polychoric correlation matrix
set.seed(1)
S <- matrix(rWishart(1, df=5, Sigma=diag(1,5)), 5, 5)
prec <- diag(1/sqrt(diag(S)))
cor <- prec%*%S%*%prec
sigma <- cor
set.seed(123)
y=rmnorm(70, c(1,1,0,0,0), varcov=sigma)
y=floor(y)+4
fit <- ordprob.mple(y, K=7, same.mean=FALSE)
#polychoric correlations
fit$cor
## End(Not run)