| pmvn_ghk | R Documentation |
Computes the approximate log-likelihood for a count time series model based on a Gaussian or Student–t copula using the Geweke–Hajivassiliou–Keane (GHK) simulator.
pmvn_ghk(lower, upper, tau, od, M = 1000, QMC = TRUE, ret_llk = TRUE)
pmvt_ghk(
lower,
upper,
tau,
od,
M = 1000,
QMC = TRUE,
ret_llk = TRUE,
df,
engine = c("mvmn", "mvt")
)
lower |
Numeric vector of length |
upper |
Numeric vector of length |
tau |
Numeric vector of ARMA dependence parameters ordered as
|
od |
Integer vector |
M |
Positive integer specifying the number of Monte Carlo or quasi-Monte Carlo samples used in the simulation. |
QMC |
Logical; if |
ret_llk |
Logical; if |
df |
Degrees of freedom for the t copula. Must be greater than 2.
Required only for |
engine |
Character string specifying the conditional simulation
engine used in the GHK approximation for the t copula.
The default |
The GHK method approximates the multivariate normal or Student–t rectangle probability defining the copula likelihood by sequential simulation from truncated conditional distributions.
Two copula families are supported:
Gaussian copula via pmvn_ghk()
Student–t copula via pmvt_ghk()
In both cases, the latent dependence structure is parameterized
through an ARMA(p,q) process.
The GHK simulator approximates the multivariate normal or t rectangle probability by decomposing it into a sequence of one-dimensional truncated conditional distributions.
By default, a numeric scalar giving the approximate
log-likelihood. If ret_llk = FALSE, internal diagnostic
quantities from the GHK simulator are returned (primarily for
internal use).
Nguyen, Q. N., & De Oliveira, V. (2026). Likelihood Inference in Gaussian Copula Models for Count Time Series via Minimax Exponential Tilting Journal of Computational Statistics and Data Analysis.
Nguyen, Q. N., & De Oliveira, V. (2026).
Scalable Likelihood Inference for Student–t Copula Count Time Series.
Manuscript in preparation.
pmvn_ghk, pmvt_ghk
## Gaussian copula example
mu <- 10
tau <- 0.2
arma_order <- c(1, 0)
sim_data <- sim_poisson(mu = mu, tau = tau, arma_order = arma_order,
nsim = 500, family = "gaussian", seed = 1)
y <- sim_data$y
a <- qnorm(ppois(y - 1, lambda = mu))
b <- qnorm(ppois(y, lambda = mu))
llk_gauss <- pmvn_ghk(lower = a, upper = b, tau = tau, od = arma_order,
M = 1000)
## Student--t copula example
df <- 8
sim_data_t <- sim_poisson(mu = mu, tau = tau, arma_order = arma_order,
nsim = 500, family = "t", df = df, seed = 1)
y_t <- sim_data_t$y
a_t <- qt(ppois(y_t - 1, lambda = mu), df = df)
b_t <- qt(ppois(y_t, lambda = mu), df = df)
llk_t <- pmvt_ghk(lower = a_t, upper = b_t, tau = tau, od = arma_order,
M = 1000, df = df)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.