Batchalign

From Eigenvector Research Documentation Wiki
Revision as of 15:15, 9 June 2014 by imported>Jeremy (→‎Options)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Purpose

Convert data columns based on matching a reference column to a target vector.

Synopsis

aligned = batchalign(data,ref_column,target,options)

Description

Stretch or contract data columns based on a target using given method. Savgol options can be used to exaggerate transitions in data prior to cow.

Inputs

  • data = (nsample, nvar) dataset or double array containing data columns to align.
  • ref_column = scalar indicating the column # of data that we are going to match OR ref_vector which is a vector to use in match.
  • target = (nsample, 1) vector or dataset to which we are trying to match the ref_column or ref_vector.

Outputs

  • aligned: dataset or double array (depending on input data type) containing the aligned data. If it is a dataset of different number of rows from input then the class, axisscale and labels are set according to the closest row in input dataset.

Options

options = a structure array with the following fields:

  • method: [ 'linear' | {'cow'} | 'padwithnan' ] Alignment method.
    • 'linear' means the data columns are extented/contracted using linear interpolation to have the same number of data points as the target vector.
    • 'cow' applies Correlation Optimized Warping to match the reference column to the target vector, then apply the same transformation to the other columns.
    • 'padwithnan' uses NaN values to extend columns, or truncates columns, to have the same number of data points as the target vector.
  • savgolwidth: Number of points in savgol filter.
  • savgolorder: Order of savgol polynomial.
  • savgolderiv: [0,1,2...] Order of derivative to take of target and ref_column before doing alignment (default = 0).

Cow only options.

  • cow: structure with the following fields:
    • cow.segments : Segment length.
    • cow.slack: max range of warping. 'slack' value must be less than or equal to segments minus 4.
    • cow.plots: Governs plotting with COW (0 = no plots).
    • cow.correlationpower: correlation power.
    • cow.forceequalsegs: Force equal segment lengths in "xt" and "xP".
    • cow.fixmaxcorrection: Fix maximum correction.

See Also

alignmat, batchfold, cow, matchrows