Hello,
I am generating a series of heatmaps using the MArrayLM eBayes object from a limma linear model analysis of microarray data. I have the heatmap generated but I would like to put gene symbols in place of the probeID (row). Can anyone describe a way to do this? Thanks for looking into this, the code I am using for this process is attached below.
- Matt
ph = CELdat@phenoData
ph@data[ ,1] = c("WT1","WT2","WT3","WT4","WT5","WT6","WT7","WT8","MO1","MO2","MO3","MO4","RS1","RS2","RS3","RS4")
ph@data[ ,2] = c("control","control","control","control","control","control","control","control","morphant","morphant","morphant","morphant","rescue","rescue","rescue","rescue")
colnames(ph@data)[2]="Treatment"
colnames(ph@data)[1]="Sample"
groups = ph@data$Treatment
f = factor(groups,levels=c("control","morphant","rescue"))
eset<-rma(CELdat, background=TRUE, normalize=TRUE, subset=NULL, target="core")
library(affycoretools)
eset <- annotateEset(eset, annotation(eset))
library(org.Dr.eg.db)
fd <- fData(eset)
fd$ENTREZID <- mapIds(org.Dr.eg.db, as.character(fd$SYMBOL), "ENTREZID","SYMBOL",multiVals="first")
fData(eset) <- fd
library(limma)
design = model.matrix(~ 0 + f)
colnames(design)=c("control","morphant","rescue")
design
data.fit = lmFit(eset,design)
contrast.matrix = makeContrasts(morphant-control,rescue-control,morphant-rescue,levels=design)
data.fit.con = contrasts.fit(data.fit,contrast.matrix)
data.fit.eb = eBayes(data.fit.con)
results <- decideTests(data.fit.eb,p.value=0.01,adjust="BH",lfc=1.5)
library(gplots)
y<-exprs(eset)
tab2 <- topTable(data.fit.eb, coef=2, adjust="BH",sort.by="P",p.value=0.01,lfc=1.5, n=Inf)
tab1 <- topTable(data.fit.eb, coef=1, adjust="BH",sort.by="P",p.value=0.01,lfc=1.5, n=Inf)
heatmap.2(y[rownames(tab1),], main="Leptin-A Morphant", ylab="Probeset ID", xlab="Microarray Sample",col=greenred(75),cexRow=0.5,scale="none",key=TRUE, symkey=FALSE, density.info="none", trace="none")
heatmap.2(y[rownames(tab2),], main="Leptin-A Rescue", ylab="Probeset ID", xlab="Microarray Sample",col=greenred(75),cexRow=0.5,scale="none",key=TRUE, symkey=FALSE, density.info="none", trace="none")
R version 3.3.1 (2016-06-21)
Platform: i386-w64-mingw32/i386 (32-bit)
Running under: Windows 7 x64 (build 7601) Service Pack 1
locale:
[1] LC_COLLATE=English_United States.1252 LC_CTYPE=English_United States.1252
[3] LC_MONETARY=English_United States.1252 LC_NUMERIC=C
[5] LC_TIME=English_United States.1252
attached base packages:
[1] stats4 parallel stats graphics grDevices utils datasets methods base
other attached packages:
[1] limma_3.28.21 org.Dr.eg.db_3.3.0 AnnotationDbi_1.34.4
[4] affycoretools_1.44.3 pd.zebgene.1.1.st_3.12.0 RSQLite_1.0.0
[7] DBI_0.5-1 oligo_1.36.1 Biostrings_2.40.2
[10] XVector_0.12.1 IRanges_2.6.1 S4Vectors_0.10.3
[13] Biobase_2.32.0 oligoClasses_1.34.0 BiocGenerics_0.18.0
loaded via a namespace (and not attached):
[1] httr_1.2.1 munsell_0.4.3
[3] latticeExtra_0.6-28 BSgenome_1.40.1
[5] dichromat_2.0-0 R.utils_2.5.0
[7] lazyeval_0.2.0 tibble_1.2
[9] PFAM.db_3.3.0 httpuv_1.3.3
[11] R6_2.2.0 ensembldb_1.4.7
[13] graph_1.50.0 affxparser_1.44.0
[15] BiocInstaller_1.22.3 data.table_1.9.6
[17] reshape_0.8.6 annotate_1.50.1
[19] xtable_1.8-2 gdata_2.17.0
[21] tools_3.3.1 stringr_1.1.0
[23] rtracklayer_1.32.2 mime_0.5
[25] GSEABase_1.34.1 shiny_0.14.2
[27] chron_2.3-47 R.oo_1.21.0
[29] GOstats_2.38.1 foreach_1.4.3
[31] digest_0.6.10 KernSmooth_2.23-15
[33] GO.db_3.3.0 GenomeInfoDb_1.8.7
[35] codetools_0.2-15 GGally_1.3.0
[37] ff_2.2-13 GenomicAlignments_1.8.4
[39] gplots_3.0.1 genefilter_1.54.2
[41] scales_0.4.1 stringi_1.1.2
[43] locfit_1.5-9.1 R.methodsS3_1.7.1
[45] assertthat_0.1 gcrma_2.44.0
[47] lattice_0.20-34 AnnotationForge_1.14.2
[49] interactiveDisplayBase_1.10.3 biovizBase_1.20.0
[51] Rcpp_0.12.8 OrganismDbi_1.14.1
[53] caTools_1.17.1 Hmisc_4.0-0
[55] Formula_1.2-1 ggplot2_2.2.0
[57] htmlTable_1.7 Category_2.38.0
[59] grid_3.3.1 ReportingTools_2.12.2
[61] GenomicRanges_1.24.3 preprocessCore_1.34.0
[63] plyr_1.8.4 RBGL_1.48.1
[65] survival_2.40-1 edgeR_3.14.0
[67] acepack_1.4.1 affy_1.50.0
[69] rpart_4.1-10 magrittr_1.5
[71] SummarizedExperiment_1.2.3 VariantAnnotation_1.18.7
[73] gridExtra_2.2.1 affyio_1.42.0
[75] biomaRt_2.28.0 htmltools_0.3.5
[77] ggbio_1.20.2 knitr_1.15
[79] nnet_7.3-12 gtable_0.2.0
[81] zlibbioc_1.18.0 colorspace_1.3-0
[83] geneplotter_1.50.0 cluster_2.0.5
[85] gtools_3.5.0 RCurl_1.95-4.8
[87] DESeq2_1.12.4 bitops_1.0-6
[89] RColorBrewer_1.1-2 Matrix_1.2-7.1
[91] foreign_0.8-67 bit_1.1-12
[93] GenomicFeatures_1.24.5 hwriter_1.3.2
[95] reshape2_1.4.2 XML_3.98-1.5
[97] AnnotationHub_2.4.2 iterators_1.0.8
[99] splines_3.3.1 BiocParallel_1.6.6
[101] Rsamtools_1.24.0
Thank you all for commenting.
I found that adding: "labRow=tab1$SYMBOL" solved my problems. (Gordon knows his stuff!)