3

我有一个表,其中包含每个组内每个变量的计数。

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))
4

1 回答 1

2

只需删除Rowv=NAColv=NA参数,热图将按值聚类:

heatmap(tmp, col = heat.colors(256), scale="column", margins=c(5,10))
于 2012-08-28T16:16:40.010 回答