Applies the average difference algorithm to Affymetrix data (D.B. Baird).
Options
PRINT = string token |
Whether to print monitoring information (monitoring); default * |
|---|---|
SDLIMIT = scalar |
Maximum number of iterations; default 50 |
Parameters
DATA = variates or pointers |
Data values |
|---|---|
GROUPS = factors |
Groupings of the data values |
MEANS = variates |
Saves the means |
SE = variates |
Saves standard errors |
Description
MAVDIFFERENCE uses the average difference algorithm to remove extreme values from Affymetrix data. These are defined as values more than option SDLIMIT standard deviations from the mean.
The data values are specified by the DATA parameter. They can be in a single variate, with any groupings (corresponding to different genes or probes) specified by the GROUPS parameter. Alternatively, they can be in separate variates, one for each group. The MEANS parameter saves the means. The SE parameter saves the estimated standard deviation when there are no groups, or the standard error of the mean when there are groups.
Options: PRINT, SDLIMIT.
Parameters: DATA, GROUPS, MEANS, SE.
Action with RESTRICT
MAVDIFFERENCE takes account of any restrictions on DATA or GROUPS.
See also
Procedures: AFFYMETRIX, FDRBONFERRONI, FDRMIXTURE, MAANOVA, MABGCORRECT, MAEBAYES, MAREGRESSION, MARMA, MAROBUSTMEANS, MAVOLCANO, QNORMALIZE.
Commands for: Microarray data.
Example
CAPTION 'MAVDIFFERENCE example'; STYLE=meta
ENQUIRE CHANNEL=-1; EXIST=check; NAME=\
'%GENDIR%/Data/Microarrays/HybStds.gwb'
IF check
SPLOAD '%GENDIR%/Data/Microarrays/HybStds.gwb'
"Convert Data into PM/MM columns"
SORT [INDEX=Slide,Probe,Atom] Slide,Probe,Atom,PM_MM,Intensity
SUBSET [PM_MM .in. 'MM'] Intensity; MM
SUBSET [PM_MM .in. 'PM'] Slide,Probe,Atom,Intensity
CALCULATE PM = Intensity
DELETE [REDEFINE=yes] Intensity,ROW,COL,PM_MM
FACPRODUCT !p(Slide,Probe); SlideProbe
CALCULATE LogDiff = (LOG(PM) - LOG(MM))/LOG(2)
MAVDIFFERENCE [PRINT=Monitoring] LogDiff; GROUPS=SlideProbe;\
MEANS=ESTIMATES; SE=SE
"Extract Labels for combined factor and split into two parts"
GETATTRIBUTE [ATTRIBUTE=labels] SlideProbe; SPLabs
TEXT Slide_Probe; SPLabs['labels']
CALCULATE Space_Pos = GETPOSITION(Slide_Probe;' ')
CONCATENATE [NEWTEXT=SlideID] Slide_Probe; WIDTH=Space_Pos-1
CONCATENATE [NEWTEXT=ProbeID] Slide_Probe; SKIP=Space_Pos
"Display results"
FSPREAD SlideID,ProbeID,ESTIMATES,SE
ELSE
CAPTION 'Microarray example datasets have not been installed.'
ENDIF