[BioC] preprocessing Affymetrix with threestep and expresso
Javier Pérez Florido
jpflorido at gmail.com
Tue Sep 1 19:10:06 CEST 2009
Dear list,
Any tips for the following question?
Affymetrix performs the normalization step after summarization and I
would like to know whether , using another normalization step than the
one described for MAS (scaling), I have to write the normalization step
after the summarization or not. I mean, If I want to use "quantile" as
normalization, I don't know if I have to proceed like this:
res<- expresso(data, bgcorrect.method = "mas", pmcorrect.method = "mas",
normalize = FALSE, summary.method = "mas")
res2<-normalize(res,method="quantiles")
exprs(res2)<-log2(exprs(res2))
or like this:
res<- expresso(data, bgcorrect.method = "mas", pmcorrect.method = "mas",
normalize.method = "quantiles", summary.method = "mas")
exprs(res)<-log2(exprs(res))
Thanks again,
Javier
Javier Pérez Florido escribió:
> Laurent Gautier escribió:
>> Javier Pérez Florido wrote:
>>> Dear list,
>>> I have 3 questions about threestep (affyPLM) and expresso (AFFY)
>>> functions:
>>>
>>> 1. Which type of pm correction does threestep function perform?
>>> PMonly?
>>> 2. I would like to preprocess my microarray experiment using the
>>> following steps within the preprocessing method: GCRMA as
>>> background correction, INVARIANTSET as normalization, PMONLY
>>> as pm
>>> correction and TUKEY-BIWEIGHT (MAS) as summarization
>>> procedure. Is
>>> there any function which I can use to perform it? As far as I
>>> know, expresso hasn't got GCRMA as background correction and
>>> threestep function hasn't got INVARIANTSET as normalization
>>> procedure. Any tips?
>>
>> In GCRMA it seems that it is named a background adjustment rather than a
>> background correction, and therefore do not fit in the existing
>> framework.
>>
>> The following might(*) bring GCRMA to affy (*: not tested):
>> bg.correct.gcrma <- bg.adjust.gcrma
>> upDate.bgcorrect.methods(c(bgcorrect.methods(), "gcrma"))
> Thanks Prof. Gautier, it worked like you said. Now, I am able to use
> gcrma as background "method" in expresso.
>>
>> For threestep, the set of normalization methods it accepts is an
>> hard-coded list. Editing the code to make it accept an other method
>> at the R level is rather simple, but one should check what is happening
>> with those method names at the C level.
>> Going the other way around and write a summary method for affy that
>> performs the fit of a linear model of your choosing is also an
>> alternative.
>>
>>
>>> 3. If I want to perform MAS preprocessing using expresso, I think I
>>> should do it like this:
>>>
>>> eset<- expresso(data, bgcorrect.method = "mas",
>>> pmcorrect.method
>>> = "mas", normalize = FALSE, summary.method = "mas")
>>> eset<-affy.scalevalue.exprSet(eset)
>>> exprs(eset)<-log2(exprs(eset))
>>
>> The source is open:
>>
>>> mas5
>> function (object, normalize = TRUE, sc = 500, analysis = "absolute",
>> ...)
>> {
>> res <- expresso(object, bgcorrect.method = "mas", pmcorrect.method
>> = "mas",
>> normalize = FALSE, summary.method = "mas", ...)
>> if (normalize)
>> res <- affy.scalevalue.exprSet(res, sc = sc, analysis =
>> analysis)
>> return(res)
>> }
>> <environment: namespace:affy>
>>
>>
>>> This is done this way because Affymetrix performs the normalization
>>> step after summarization. What about if I want to perform NO
>>> background correction, INVARIANTSET as normalization, MAS as pm
>>> correction and MAS as summarization? Is it like this?
>>> eset<- expresso(data, bgcorrect.method = "mas", pmcorrect.method
>>> = "mas", normalize.method="invariantset" summary.method = "mas")
>>> exprs(eset)<-log2(exprs(eset))
>>
>> Most likely not. It looks like you copied/pasted the call to perform
>> MAS5.0 without a change.
>> The help pages contain how to get the method names.
>> Example: help("bgcorrect.methods")
> OK, you were right about mas5 method (Affy package) and I wrote the
> expresso command in the wrong way.
> What I wanted to mean is that Affymetrix performs the normalization
> step after summarization (I don`t know why). What I would like to know
> is if I want to use another normalization step than the one described
> for MAS (scaling), do I have to write the normalization step after the
> summarization? I mean, If I want to use "quantile" as normalization, I
> don't know if I have to proceed like this:
>
> res<- expresso(data, bgcorrect.method = "mas", pmcorrect.method =
> "mas", normalize = FALSE, summary.method = "mas")
> res2<-normalize(res,method="quantiles")
> exprs(res2)<-log2(exprs(res2))
>
> or like this:
>
> res<- expresso(data, bgcorrect.method = "mas", pmcorrect.method =
> "mas", normalize.method = "quantiles", summary.method = "mas")
> exprs(res)<-log2(exprs(res))
>
> Thanks again,
> Javier
>
>
>
>>
>>
>> L.
>>
>>> Thanks in advance,
>>> Javier
>>>
>>>
>>> [[alternative HTML version deleted]]
>>>
>>> _______________________________________________
>>> Bioconductor mailing list
>>> Bioconductor at stat.math.ethz.ch
>>> https://stat.ethz.ch/mailman/listinfo/bioconductor
>>> Search the archives:
>>> http://news.gmane.org/gmane.science.biology.informatics.conductor
>>
>>
>
>
More information about the Bioconductor
mailing list