Learn R Programming

icamix (version 1.0.6)

EMFASTICAALG:

Description

An R wrapper for carrying out NSMM-ICA on nonparametric multivariate ICA mixture data.

Usage

EMFASTICAALG(DataMatrix, numCluster, h = 0, maxiter = 300, 
icaiter = 150, tol = 1e-06, verb = TRUE, combine = TRUE,
seednum = 82196, ...)

Arguments

DataMatrix
A matrix of which the rows are data entries. Its dimension is n by r.
numCluster
Predetermined number of mixing components m.
h
Bandwidth. If h is set equal zero (default), iterative bandwidth selection will be used.
maxiter
Maximum number of iterations. Default is 300.
icaiter
Maximum number of ICA iterations in each step. Default is 150.
tol
Threshold that defines convergence (of the outer loop). Default is 1e-6.
verb
TRUE (default) or FALSE indicating whether to print out info at each iteration.
combine
TRUE (default) or FALSE indicating whether to implement the ICA step.
seednum
Seed number (default is 82196) used in kmeans before 1st iteration.

Value

The returned value is an EMFASTICAALG object which consists of a list of items:
$InputData
A matrix of which the columns are data entries. Its dimension is r by n.
$Lambdas
A matrix where rows store estimated mixing weights from each iteration.
$WMtrs
List of r by r unmixing matrices for each of the m clusters.
$WUnmixZ
List of unmixing matrices for whitened data for each of the m clusters.
$OriginalSignals
List of Recovered ICA components for each of the m clusters.
$ProductDensity
m by n matrix where each row stores the estimated density value of the observed data points for each of the m clusters.
$MembershipProbs
n by m matrix where each row stores the component membership probabilities of the corresponding data point.
$ObjValue
Vector holding values of data loglikelihood.
$ICABandWidth
Matrix holding choices of bandwidth for original signals.
$call
The function call that results in the returned object.
$time
Computing time elapsed in second.

Examples

Run this code
## An Example that runs the NSMM-ICA algorithm on Cohen's tone data
data(tonedata, package="mixtools")
b <- EMFASTICAALG(tonedata, 2, h=0, tol=1e-8)  

Run the code above in your browser using DataLab