malowess

Smooth microarray data using Lowess method

Syntax

YSmooth = malowess(X, Y)
YSmooth = malowess(X, Y, ...'Order', OrderValue, ...)
YSmooth = malowess(X, Y, ...'Robust', RobustValue, ...)
YSmooth = malowess(X, Y, ...'Span', SpanValue, ...)

Arguments

X, Y

DataMatrix object or numeric vector containing scatter data.

OrderValue

Property to select the order of the algorithm. Enter either 1 (linear fit) or 2 (quadratic fit). The default order is 1.

RobustValue

Property to select a robust fit. Enter either true or false.

SpanValue

Property to specify the window size. The default value is 0.05 (5% of total points in X)

Description

YSmooth = malowess(X, Y) smooths scatter data in X and Y using the Lowess smoothing method. The default window size is 5% of the length of X. YSmooth is a numeric vector or, if Y is a DataMatrix object, also a DataMatrix object with the same properties as Y.

YSmooth = malowess(X, Y, ...'PropertyName', PropertyValue, ...) calls malowess with optional properties that use property name/property value pairs. You can specify one or more properties in any order. Each PropertyName must be enclosed in single quotation marks and is case insensitive. These property name/property value pairs are as follows:

YSmooth = malowess(X, Y, ...'Order', OrderValue, ...) chooses the order of the algorithm. Note that the Curve Fitting Toolbox™ software refers to Lowess smoothing of order 2 as Loess smoothing.

YSmooth = malowess(X, Y, ...'Robust', RobustValue, ...) uses a robust fit when RobustValue is set to true. This option can take a long time to calculate.

YSmooth = malowess(X, Y, ...'Span', SpanValue, ...) modifies the window size for the smoothing function. If SpanValue is less than 1, the window size is taken to be a fraction of the number of points in the data. If SpanValue is greater than 1, the window is of size SpanValue.

Examples

maStruct = gprread('mouse_a1wt.gpr');
cy5data = magetfield(maStruct, 'F635 Median');
cy3data = magetfield(maStruct, 'F532 Median');
[x,y] = mairplot(cy5data, cy3data);
drawnow
ysmooth = malowess(x,y);
hold on;
plot(x, ysmooth, 'rx')
ynorm = y - ysmooth;
Introduced before R2006a