Hello:
I have a tab delim file with 100 rows and 100 columns.
I have numerical values in this table. What I want is to create an image
color map with color gradation.
my values range from -5 to 0. max value is 0.
to acheive this, I need to convert my data.frame into matrix.
I tried following :
mydf <- read.table('mytable',sep='\t',header=T)
mydf1 <- mydf[,2:100]
colnames(mydf1) <- as.character(mydf[,1])
here comes the trouble:
mymat <- as.matrix(mydf1)
-- numerical values become character values. -1 becomes "-1"
mymat <- data.matrix(mydf1)
-- whole matrix is filled with 1,2 and 3.
Is there any other way I can do this.
say row names are city schools
colnames are student names
appreciate your help.
Thanks
AJ
[[alternative HTML version deleted]]
Do an 'str' on your data so that we see what it contains. It may appear to be numbers, but they might also be factors as a result of the read.table. On Thu, Mar 27, 2008 at 7:43 PM, Adrian Johnson <oriolebaltimore at gmail.com> wrote:> Hello: > > I have a tab delim file with 100 rows and 100 columns. > > I have numerical values in this table. What I want is to create an image > color map with color gradation. > > my values range from -5 to 0. max value is 0. > > to acheive this, I need to convert my data.frame into matrix. > > I tried following : > > mydf <- read.table('mytable',sep='\t',header=T) > mydf1 <- mydf[,2:100] > colnames(mydf1) <- as.character(mydf[,1]) > > here comes the trouble: > > mymat <- as.matrix(mydf1) > > -- numerical values become character values. -1 becomes "-1" > > mymat <- data.matrix(mydf1) > > -- whole matrix is filled with 1,2 and 3. > > Is there any other way I can do this. > > say row names are city schools > colnames are student names > > appreciate your help. > > Thanks > AJ > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >-- Jim Holtman Cincinnati, OH +1 513 646 9390 What is the problem you are trying to solve?
Adrian Johnson wrote:> Hello: > > I have a tab delim file with 100 rows and 100 columns. > > I have numerical values in this table. What I want is to create an image > color map with color gradation. > > my values range from -5 to 0. max value is 0. > > to acheive this, I need to convert my data.frame into matrix. > > I tried following : > > mydf <- read.table('mytable',sep='\t',header=T) > mydf1 <- mydf[,2:100] > colnames(mydf1) <- as.character(mydf[,1]) > > here comes the trouble: > > mymat <- as.matrix(mydf1) > > -- numerical values become character values. -1 becomes "-1" > > mymat <- data.matrix(mydf1) > > -- whole matrix is filled with 1,2 and 3. > > Is there any other way I can do this. > > say row names are city schools > colnames are student names >Hi Adrian, Have you looked at color2d.matplot in the plotrix package? Jim
> > Is there any other way I can do this. > > > > say row names are city schools > > colnames are student names > > > Hi Adrian, > Have you looked at color2d.matplot in the plotrix package? > > JimYou might also want to check out the seriation package, which provides tools to reorder your matrix to better reveal any patterns in the data. Hadley -- http://had.co.nz/