[BioC] single channel analysis

David martin vilanew at gmail.com
Wed Apr 28 15:05:15 CEST 2010


Hi,
I'm have a custom array design with several blocks and each spot in 
duplicate. I'm running a single channel experiment. Each sample being 
labeled with the same dye.

My problem is that when spots are assigned  weight=0 (discarded) they 
still all appear in the fitted object. I though that assigning a weight 
of 0 would discard this spots (would be removed from thh analysis). In 
the documentation this seems to be true for withinarraynormalization 
SInce this is not the case, how can i remove all these spots ??

Here is the code:


#
# Load libraries
#
library(limma)

# This defines the column name of the mean Cy5 foreground intensites
Cy5 <- "F635 Mean"

# This defines the column name of the mean Cy5 background intensites
Cy5b <- "B635 Mean"


# Read the targets file (see limmaUsersGuide for info on how to create this)
targets <- readTargets("targets.txt")


#Read gpr files and weight negative spots as 0 for spots with Flags -50.
RG <- read.maimages(targets$FileName,
       source="genepix",
       columns=list(R=Cy5,G=Cy5, Rb=Cy5b,Gb=Cy5b),
       annotation = c("Block", "Column", "Row", "ID", "Name","Flags"),
       wt.fun=wtflags(weight=0,cutoff=-50),
       )

# remove the extraneous green channel values
RG$G <- NULL
RG$Gb <- NULL

#Read spotypes and assign controls
spottypes<-readSpotTypes("spottypes.txt")
RG$genes$Status<-controlStatus(spottypes,RG$genes)

#Do background correction
bRG <- backgroundCorrect(RG$R,method='normexp')

#Normalize
MA <- normalizeBetweenArrays(log2(bRG), method="quantile")

#Handle duplicates spots
corfit <- duplicateCorrelation(MA,ndups=2,spacing=1)

fit<-lmFit(MA,correlation=corfit$consensus.correlation,weights=w,ndups=2,genelist=RG$genes$Name)
fit<-eBayes(fit)
topTable(fit,genelist=RG$genes$Name,number=NULL)



More information about the Bioconductor mailing list