Coercion of MethyLumiSet to MethyLumiR changes raw methylation values?
Entering edit mode
Last seen 6.6 years ago
Hello, I am a data analyst currently experimenting with normalization methods for data from the Illumina 450K platform, and currently I'm examining what the different normalization packages (minfi, lumi, wateRmelon) offer, and how they differ from one another. In looking at methylumi/lumi, I ran into a question that I haven't been able to solve -- I've looked at the documentation, mailling list, and hacked as much of the internal functions as I am able -- how does lumiMethyR change the raw values from the input file? I noticed that when I extract values using "exprs", I get different raw methylation values compared to both the raw data and the data read by methylumiR, where my understanding was that lumiMethyR is just a wrapper for the former function. Let me be explicit with an example... I'll use the raw data provided in the package: > filename <- system.file('extdata/exampledata.samples.txt', package = 'methylumi') The methylation values are based on the raw Illumina output. In this example, we look at the first probe reading from the first sample: >raw_dat <- read.delim(filename) >raw_dat[1:4,1:8] For the very first probe ("AATK_E63_R"), we have an unmethylated signal ("CY3") of 1565.675, and a methylated signal ("CY5") 3054.818, so the beta calculated according to Illumina standards, M/(U+M+100), is displayed ("AVG_Beta") as 0.6471396. Now when I use the function methylumiR to read the data, and convert M-values to beta-values (I use the function "m2beta" below), I get the same thing: > m2beta <- function(x) 2^x/(1 + 2^x) > mlsdat <- methylumiR(filename) > m2beta(exprs(mlsdat)[1:4,1]) mlsdat is of the class "MethyLumiSet" But when I use the function lumiMethyR, I get a different beta-value (e.g. 0.65445962 for the first probe) > mlmdat <- lumiMethyR(filename) > m2beta(exprs(mlmdat)[1:4,1]) mlmdat is of the class "MethyLumiM" And I noticed that this change occurs in the second line of the "lumiMethyR" function, when the "MethyLumiSet" object is coerced to class "MethyLumiM". >mlmdat <- as(mlsdat, "MethyLumiM") >m2beta(exprs(mlmdat)[1:4,1]) So I guess my main question is: what is the coercion of class doing to the numerical calculation of methylation signals? Any other insight would be very much appreciated! And I apologize in advance if this question has already been addressed. For the record, I am using R version 3.0.2 on 64-bit Windows 7. Thank you, Nick Fishbane
Normalization probe lumi Normalization probe lumi • 1.3k views
Entering edit mode
dsweeney • 0
Last seen 7.7 years ago
United States

Hi Nick,

Did you ever get an answer for this?

I'm noticing I think the same thing, that my original "Signal_A" and "Signal_B" values give M-values that are close to those reported as exprs values in my MethyLumiM object (loaded by way of the lumiMethyR i.e. the wrapped methylumiR function). They are not log2(meth+1/unmeth+2) though, and I can't seem to find any insight as to how lumi is transforming these data.


Deacon Sweeney


Login before adding your answer.

Traffic: 448 users visited in the last hour
Help About
Access RSS

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6