我有一个表,其中包含每个组内每个变量的计数。
Age var1 var2 var3 var4
10 0 200 0 100
20 180 500 200 300
30 0 80 0 60
40 150 10 90 20
我正在尝试使用R创建一个热图。在热图的结果中,列的顺序与它们在数据中的顺序相同。
我需要安排/聚集这些列,使具有相似值的变量聚集在一起(以提供聚簇外观)。
在上面的例子中,查看计数(值),var1更类似于var3,而var2更类似于var4。
以下是生成相同内容的代码:
tmp = rbind(c(0,200,0,100),
rbind(c(180, 500, 200, 300),
rbind(c (0, 80, 0, 60),
c(150, 10, 90, 20)
)))
rownames(tmp) = c('age10', 'age20', 'age30', 'age40')
colnames(tmp) = c('var1', 'var2', 'var3', 'var4')
tmp
heatmap(tmp, Rowv=NA, Colv=NA,
col = heat.colors(256), scale="column", margins=c(5,10))
答案 0 :(得分:2)
只需删除Rowv=NA
和Colv=NA
参数,热图将按值进行聚类:
heatmap(tmp, col = heat.colors(256), scale="column", margins=c(5,10))