[R] Composing a matrix for 'heatmap' from original dataset and genetic data analysis.

Lavrentiy goujat at gmail.com
Tue Feb 21 23:35:38 CET 2006


Hello.

I have following data:
doze	g1	g2	g3	g4	etc...
1200	a	d
1100	b	e
1158	c	f
1500	a	e
1403	c	f
...
etc.

Doze - numeric, levels(g1)=c('a','b','c'), levels(g2)=c('d','e','f').

This is the data of genetic analysis, where the factors are genes and 
the numerical is some numerical value.

I want to build up a function, which will do a preliminary data 
visualization based on factor levels combination and mean doze for that 
combination.

The best way to do it, as I think, is to build a tree which divides at 
the "stage 1" into the levels of factor 1, then on the "stage 2" into 
the levels of factor two etc. And in the end it will be mean doze for 
this branch. What I found was only 'ctree', this can only bifurcate, I'm 
not sure it fits much. What's the convenient way to visualize such kind 
of data in R?

I think 'heatmap' for any two factors I give to it with text mean labels 
(how to add them?) would be nice solution. So that's the way I wrote 
(ughly):

zar <- function(g1,g2,param='doz') {

levels(g1)->lg1
levels(g2)->lg2
table(lg1,lg2)->f
#to make a matrix for 'heatmap', is it necessary?
#data labels are not preserved in this expression, badly!

for (i in lg1) {
	for (j in lg2) {
	 
f[i,j]<-mean(subset(mydata,as.factor(g1)==i&as.factor(g2)==j)[[param]], 
na.rm=T)
			}
		}
heatmap(-f, Rowv=NA, Colv=NA, margins=c(10,10),main=param)
}

Please, make a hint to me for how to do this task easier and more 
convenient,
how to add text labels to 'heatmap'
and is this way right?

-- 
Evgeniy




More information about the R-help mailing list