how to convert MA list to expression matrix?

146 Views Asked by At

I am doing differential expression of Agilent two-channel microarray analysis and I got the MA list and I want to convert it to expression matrix, can I use MAlist$A to produce it as it is log2 values. the M matrix has a lot of negative values and it is really low and I do not know if it is ok or not? here is the box plot enter image description here

my code

  require('limma')
    
    targetinfo <- readTargets('targets.txt', sep = '\t')
    project <- read.maimages(targetinfo, source = 'agilent')
    # Perform background correction on the fluorescent intensities
   MA <- backgroundCorrect(project, method = 'normexp', offset = 16)

Here is my target.txt

show(targets)
                    FileName disease
1  SampleFiles/GSM176570.txt   FX     
2  SampleFiles/GSM176575.txt   FX     
3  SampleFiles/GSM176579.txt   FX     
4  SampleFiles/GSM176583.txt   FX     
5  SampleFiles/GSM176586.txt   C     
6  SampleFiles/GSM176589.txt   C
1

There are 1 best solutions below

2
On

The short answer is you should use the M values. I cannot see your target files, so I have no clue what the background correction is done over.

A good way to convert is to use the convert package as shown in this manual for expression set, so below I used an example data similar to yours:

library(limma)
targetinfo <- readTargets("TargetBeta7.txt")
project <- read.maimages(targetinfo,source="genepix")
project <- backgroundCorrect(project, method="normexp", offset=50)
MA <- normalizeWithinArrays(project)

Then convert:

#install using BiocManager::install("convert")
library(convert)
eset = as(MA, "ExpressionSet")

You can check the values:

head(exprs(eset))
    6Hs.195.1    6Hs.168     6Hs.166    6Hs.187.1     6Hs.194   6Hs.243.1
1 -0.14680077  0.1104113 -0.01172555 -0.057836495 -0.06372548  0.85761577
2 -0.08776962  0.1893185 -0.02600634 -0.072301864  0.19329923  1.39021146
3  0.55834060  0.3051494  0.33223516 -0.008061431  0.46835596  0.41179532
4  0.21925587  0.4453152 -0.10680881 -0.026872543  0.09459589 -0.01676835
5 -0.33695592 -0.2091978 -0.13209201 -0.093929553 -0.16276967 -0.19276659
6 -0.46437638 -0.2647629 -1.04651233 -0.067690463 -0.20793054 -0.39403884

And its the same as:

head(MA$M)
      6Hs.195.1    6Hs.168     6Hs.166    6Hs.187.1     6Hs.194   6Hs.243.1
[1,] -0.14680077  0.1104113 -0.01172555 -0.057836495 -0.06372548  0.85761577
[2,] -0.08776962  0.1893185 -0.02600634 -0.072301864  0.19329923  1.39021146
[3,]  0.55834060  0.3051494  0.33223516 -0.008061431  0.46835596  0.41179532
[4,]  0.21925587  0.4453152 -0.10680881 -0.026872543  0.09459589 -0.01676835
[5,] -0.33695592 -0.2091978 -0.13209201 -0.093929553 -0.16276967 -0.19276659
[6,] -0.46437638 -0.2647629 -1.04651233 -0.067690463 -0.20793054 -0.39403884