我在Rstudio中绘制了一些基因表达的热图,但是行名(应该是样本或基因名称)被数字替换。我查了some posts但没有机会。抱歉,如果这是一个简单的问题或重复,我是R的新人。
这是我的R脚本:
###############################################################
library(heatmaply)
filename <- "TFzebra-TMM-name.matrix"
head(filename)
my_data <- read.table(filename, sep='\t', quote='', stringsAsFactors=FALSE, header=TRUE)
head(my_data)
dim(my_data)
nrow(my_data)
ncol(my_data)
row.names(my_data) <- my_data$samples
head (my_data)
my_data <- my_data[, -1]
head(my_data)
data <- my_data/rowSums(my_data)
my_matrix <- as.matrix(data)
heatmaply(data, xlab = "Features", ylab = "Transcription Factors",
scale = "column",
main = "Data transformation using 'scale'",
margins = c(60,100,40,20))
注:
> head (my_data)
samples J1 J2 J3 H1 H2 H3
1 zf-C2H2 0.00 0 0 0.507 0.232 0.540
2 baz2a 0.00 0 0 0.355 0.342 0.132
3 baz2ab 0.00 0 0 0.091 0.070 0.163
4 kdm5ba 0.00 0 0 1.835 0.856 1.527
5 dbpa 0.00 0 0 5.344 5.355 0.000
6 LOC555983 0.02 0 0 0.294 0.634 0.835
注2:
> my_data <- my_data[, -1]
> head(my_data)
J1 J2 J3 H1 H2 H3
1 0.00 0 0 0.507 0.232 0.540
2 0.00 0 0 0.355 0.342 0.132
3 0.00 0 0 0.091 0.070 0.163
4 0.00 0 0 1.835 0.856 1.527
5 0.00 0 0 5.344 5.355 0.000
6 0.02 0 0 0.294 0.634 0.835
答案 0 :(得分:1)
你应该在删除之前将第一列添加到row.names属性(使用rownames函数,是的,我知道,它不是非常一致)。那就是:
rownames(my_data) <- my_data[, 1]
my_data <- my_data[, -1]
library(heatmaply)
heatmaply(my_data) # should now work
对于未来 - 请记住,因为你要求人们从他们的时间(免费)给你帮助,你必须首先告诉他们你已经尽力充分利用他们的时间。 因此,在你发布之前,请确保你扩展你的问题以包括所有需要的信息,以便人们回答它(特别是让它包含一个自我包含的例子)。 请阅读以下两个关于如何编写好问题的指南,这将有助于确保您将来获得所需的帮助: http://stackoverflow.com/help/how-to-ask