Coreanal

From Eigenvector Research Documentation Wiki
Jump to navigation Jump to search

Purpose

Evaluate, display, and rotate core from a Tucker model.

Synopsis

result = coreanal(core,action,param)

Description

Performs an analysis of the input core array of a Tucker model core. Results are returned in the output (result). If COREANAL is called without outputs, the text is printed to the command window.

Optional input (action) is a text string used to customize the analysis.

action = 'list', the output (result) contains text describing the main properties of the core.
action = 'plot', the core array is plotted and output result is not assigned.
action = 'maxvar', rotates the core to maximum variance. This is the same as maximum simplicity as defined by Andersson & Henrion, Chemometrics & Intelligent Laboratory Systems, 1999,47,189-204.

Optional input (param) is used to control the number of core entries.

The output (result) is a structure array containing the rotated core in the field (.core) and the rotation matrices to achieve this rotation in the field (.transformation).

The loadings of the Tucker model should also be rotated correspondingly which can also be done using COREANAL.

Examples

result = coreanal(model,'list');
result = coreanal(model.core,'list');

will list information on the core-entries (explained variance etc).

result = coreanal(model.core,'list',10);
coreanal(model.core,'list',10);

will do the same but only for the ten most significant core-entries with the second version (with no output) printing the information to the command window.

result = coreanal(model,'plot');

will make a plot of the core where the size of each core-entry shows the variance explained. If the core is of higher order than three, it is first rearranged to a three-way array.

rotatedcore = coreanal(model,'maxvar');

will rotate the core to maximal variance.

rotatedmodel = coreanal(oldmodel,rotatedcore);

where the input (oldmodel) is the original Tucker model structure and (rotatedcore) is the output from above. The rotation can be achieved in one step using:

rotatedmodel = coreanal(oldmodel,coreanal(oldmodel,'maxvar'));

See Also

corecalc, tucker