Perform Poisson scaling with scaling offset.
- [xs,sc] = poissonscale(x,options); %calibrate scaling
- xs = poissonscale(x,sc); %apply previous scaling
Scales each variable by its square root mean value. When no scale values are passed, a calibration is performed in which the square root mean values are calculated for each variable and then these are applied to the input data. If previously calculated scales are passed, these are simply applied to the data. An optional options structure allows setting of the offset which is added to each mean to avoid over-scaling when a variable has a near-zero mean.
In general, the larger the offset, the less influence the scaling will have. As the offset gets smaller, small values will be more up-scaled and larger values more down-scaled. At an offset of zero, artifacts from near-zero values can become a distraction so some small amount of offset (1-5%) is often recommended.
When used in Preprocessing Window, the offset option is available through the settings interface.
- x = Data to be scaled (double or DataSet object).
- sc = Vector of previously-calculated scales. Must be equal in length to the number of included x-block variables.
- options = Options structure. See Options section below.
- xs = Scaled data.
- sc = Vector of scales calculated for given data.
options = a structure array with the following fields:
- offset: [ 3] percent of the maximum mean value to be used as an offset on all scales. Avoids division by near-zero means.
- mode: [ 1 ] dimension of data on which to calculate the mean value for the scaling. 1 = mean over rows (to scale variables); 2 = mean over columns (to scale samples).