Polytransform
Purpose
Add new variables to a dataset object or matrix formed as power transforms and cross terms of the original variables.
Synopsis
- [xout, model] = polytransform(x, options);
Description
Add polynomial and cross terms to data matrix or dataset. Input dataset x has new transformed variables added. These can include existing variables raised to second, third, fourth power, or second order product of variables. The data can be preprocessed before transformed variables are calculated. preprocessingtype option specifies the type of preprocessing to apply, 'none', 'mncn', 'auto', or 'custom'. If 'custom' is specified then the 'preprocessing' option must be a valid preprocessing structure. If pca = 'on' the data are converted to PCA scores after preprocessing, but before the transformed variables are calculated.
Inputs
- x = Dataset or matrix to be augmented by the addition of transformed variables.
Outputs
- xout = The augmented dataset or matrix.
- model = A standard model structure with modeltype = polytransform.
Options
options is a structure array with the following fields:
- squares: [ 'on' | {'off'} ], governs level of display,
- cubes: [ 'on' | {'off'} ], governs level of display,
- quadratics: [ 'on' | {'off'} ], governs level of display,
- crossterms: [ 'on' | {'off'} ], governs level of display,
- preprocessingtype: ['none' | 'mncn' | {'auto'} | 'pcrtile' | 'custom'], governs data preprocessing behavior,
- preprocessing: A preprocessing structure which is used if preprocessingtype = custom,
- pca: [ 'on' | {'off'} ], governs whether PCA is applied to the preprocessed data before transformed terms are calculated,
- maxpcs: Integer indicating how many PCs to use if pca = on,
- preprocessoriginalvars: [ 0| {1} ], governs whether the original variables are returned preprocessed or raw.
Examples
If x is a 100 by 5 matrix, options are default, except for the squares option: popts = polytransform('options');
[xout, model] = polytrnasform(x,popts)
gives the 100 by 10 matrix where the columns 6 to 10 are the squares of the first five.