[BioC] Differential expression on individual Affy probes

James W. MacDonald jmacdon at med.umich.edu
Fri Oct 9 22:16:30 CEST 2009

Hi Peter,

My understanding of the probesets on the 3' biased arrays like the 
hgu133plus2 is that they primarily targeted the 3' UTR. For some genes 
with really short 3' UTRs and small first exons, you may be able to 
compare the expression of one or two exons.

That said, I have yet to map a single probeset that didn't fall 
completely within the 3' UTR of the mRNA it was intended to interrogate.

You can easily test this yourself; I wrote a simple function years ago 
to output the probe sequences for a probeset in FASTA format that can 
then be uploaded to blat at the UCSC genome browser:

blatGene <- function(affyid, probe, filename){
     ## affyid == Affy probeset ID
     ## probe == BioC probe package name
     ## filename == output file name
     require(probe, quietly = TRUE, character.only = TRUE)
     tmp <- data.frame(get(probe))
     if(length(affyid) > 1){
         seqnc <- vector()
         for(i in seq(along = affyid))
             seqnc <- c(seqnc, tmp[tmp$Probe.Set.Name == affyid[i], 1])
         seqnc <- tmp[tmp$Probe.Set.Name == affyid,1]
     out <- vector()
     if(length(seqnc) > 25) warning("Blat will only return values for 25 
or fewer sequences!",
                                    call. = FALSE)
     for(i in seq(along = seqnc)) out <- rbind(out, rbind(paste("> 
Probe", i, sep=""), seqnc[i]))
     write.table(out, filename, sep="\t", quote=FALSE, row.names=FALSE, 

You could do the same using a combination of the probe package, 
Biostrings, BSgenome.Hsapiens.UCSC.hg19, and rtracklayer if you wanted 
to be really cool. I have a function that did that as well, but given 
the speed with which rtracklayer has been changing, I doubt it works any 



Peter Saffrey wrote:
> I have a set of Affy human gene expression arrays (HG-U133_Plus2.1)
> CEL files representing a treated sample over a number of time points.
> I'd like to compare the expression of these files not just on the
> genes they probe but on the exons.
> I know I should be using exon arrays for this, but what I have is a
> gene arrays, so I want to see how much I can do with that. If I can
> find the differential expression in an individual probe, I can map it
> to an exon. This should give me a limited view of which exons are
> changing expression between the arrays.
> I was planning to use the Rank Product method:
> http://www.bioconductor.org/packages/bioc/html/RankProd.html
> as the differential expression algorithm. Can anybody give me any
> advice on adapting this to work on individual probes, rather than
> whole genes? Or am I completely wasting my time on this?
> Peter
> [[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

James W. MacDonald, M.S.
Douglas Lab
University of Michigan
Department of Human Genetics
5912 Buhl
1241 E. Catherine St.
Ann Arbor MI 48109-5618

More information about the Bioconductor mailing list