LSBP_ECM | R Documentation |
This function is an implementation of the expectation maximization Algorithm 2 in Rigon, T. and Durante, D. (2020).
LSBP_ECM(Formula, data, H, prior, control = control_ECM(), verbose = TRUE)
Formula |
An object of class |
data |
A data frame containing the variables described in |
H |
An integer indicating the number of mixture components. |
prior |
A list of prior hyperparameters as returned by |
control |
A list as returned by |
verbose |
A logical value indicating whether additional information should be displayed while the algorithm is running. |
The Formula
specification contains the response y
, separated from the covariates with the symbol '~
', and two sets of covariates. The latters are separated by the symbol '|
', indicating the kernel covariates and the mixing covariates, respectively. For example, one could specify y ~ x1 + x2 | x3 + x4
. NOTE: if the second set of covariates is omitted, then it is implicitely assumed that the two sets are the same.
If offsets
or weights
are provided in the Formula
they will be ignored in the current version.
A predict
method is available and described at predict.LSBP_ECM
.
The output is an object of class "LSBP_ECM
" containing the following quantities:
param
. A list containing the maximum a posteriori, for each set of coefficients: beta_mixing
, beta_kernel
, and tau
.
cluster
. A n
dimensional vector containing, for each observation, the mixture component having with the highest probability.
z
. A n x H
matrix containing the probabilities of belonging to each of the mixture components, where n
denotes the number of observations.
logposterior
. The log-posterior
of the model at convergence. NOTE: the log-posterior
is reported up to an additive constant.
call
. The input Formula.
data
. The input data frame.
control
. The control list provided as input.
H
. The input number of mixture components.
prior
. The input prior hyperparameters.
Rigon, T. and Durante, D., (2020), Tractable Bayesian density regression via logit stick-breaking priors. Journal of Statistical Planning and Inference.
## Not run: data(cars) # A model with constant kernels fit_em <- LSBP_ECM(dist ~ 1 | speed, data = cars, H = 4) plot(cars) lines(cars$speed, predict(fit_em)) # A model with linear kernels fit_em <- LSBP_ECM(dist ~ speed | speed, data = cars, H = 2) plot(cars) lines(cars$speed, predict(fit_em)) ## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.