This is a test version of Biostars. For the public version, visit https://www.biostars.org.
how I can keep row name for my matrix?

Hi,

I have a gene expression profile; genes in rows and samples in columns, but that was not numeric, when I tried as.numerric(as.character(x))

thelling : NAs introduced by coercion

when I tried

`as.matrix(as.data.frame(lapply(x, as.numeric)))`

my file become numeric but gene names were removed from rows like below

     probe cancer1 cancer2  cancer3

[1,]    27    8466 1.59275  0.35975

[2,]    28    9452 0.84700  0.15200

[3,]    29    8031 0.35325 -0.54750

[4,]    30    1735 0.24700 -0.93950

[5,]    31    9368 0.41800  0.10550

[6,]    32    3710 0.04650 -1.01075

how I can return or keep gene names in rows?

thank you

r software error sequencing

1 answer

I think if you read file into R with row.names = 1 can avoid that problem, you will get a data frame just contain expression values and gene names as rownames.

thank you, but when I read my file like so

x<- read.table("mRNA.txt", header = T, sep = "\t",row.names = 1)

then

as.matrix(as.data.frame(lapply(x, as.numeric)))

only telling

x num [1, 1] 1

If only the first column is character, the x in your code just return a data frame, and all the values are numeric, so you don' t need to as.numeric.

thank you

it worked

x=as.matrix(as.data.frame(x))

Log in to answer this question.