regmixEM.loc | R Documentation |
Iterative algorithm returning EM algorithm output for mixtures of multiple regressions where the mixing proportions are estimated locally.
regmixEM.loc(y, x, lambda = NULL, beta = NULL, sigma = NULL, k = 2, addintercept = TRUE, kern.l = c("Gaussian", "Beta", "Triangle", "Cosinus", "Optcosinus"), epsilon = 1e-08, maxit = 10000, kernl.g = 0, kernl.h = 1, verb = FALSE)
y |
An n-vector of response values. |
x |
An nxp matrix of predictors. See |
lambda |
An nxk matrix of initial local values of mixing proportions.
Entries should sum to 1. This determines number of components.
If NULL, then |
beta |
Initial global values of |
sigma |
A k-vector of initial global values of standard deviations.
If NULL, then 1/\code{sigma}^2 has random standard exponential entries.
If |
k |
Number of components. Ignored unless all of |
addintercept |
If TRUE, a column of ones is appended to the x matrix before the value of p is calculated. |
kern.l |
The type of kernel to use in the local estimation of |
epsilon |
The convergence criterion. |
maxit |
The maximum number of iterations. |
kernl.g |
A shape parameter required for the symmetric beta kernel for local estimation of |
kernl.h |
The bandwidth controlling the size of the window used in the local estimation of lambda around x. |
verb |
If TRUE, then various updates are printed during each iteration of the algorithm. |
regmixEM.loc
returns a list of class mixEM
with items:
x |
The set of predictors (which includes a column of 1's if |
y |
The response values. |
lambda.x |
The final local mixing proportions. |
beta |
The final global regression coefficients. |
sigma |
The final global standard deviations. |
loglik |
The final log-likelihood. |
posterior |
An nxk matrix of posterior probabilities for observations. |
all.loglik |
A vector of each iteration's log-likelihood. |
restarts |
The number of times the algorithm restarted due to unacceptable choice of initial values. |
ft |
A character vector giving the name of the function. |
regmixEM.lambda
## Compare a 2-component and 3-component fit to NOdata. data(NOdata) attach(NOdata) set.seed(100) out1 <- regmixEM.loc(Equivalence, NO, kernl.h = 2, epsilon = 1e-02, verb = TRUE) out2 <- regmixEM.loc(Equivalence, NO, kernl.h = 2, k = 3, epsilon = 1e-02, verb = TRUE) c(out1$loglik, out2$loglik)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.