5

行列をkmeansでクラスター化し、ヒートマップとしてプロットできるようにしたいと思います。それは非常に些細なことのように聞こえます、そして私はこのような多くのプロットを見てきました。私は周りをグーグルしようとしましたが、それを回避する方法を見つけることができません。

この図にパネルAまたはBのようなものをプロットできるようにしたいと思います。250行5列の行列があるとします。列をクラスター化するのではなく、行だけをクラスター化します。

m = matrix(rnorm(25), 250, 5)

km = kmeans(m, 10)

次に、これらの10個のクラスターをヒートマップとしてプロットするにはどうすればよいですか?あなたのコメントと助けは大歓迎です。

ありがとう。

ここに画像の説明を入力してください

4

2 に答える 2

6

次のようなものが機能するはずです。

set.seed(100)
m = matrix(rnorm(10), 100, 5)
km = kmeans(m, 10)
m2 <- cbind(m,km$cluster)
o <- order(m2[, 6])
m2 <- m2[o, ]
library(pheatmap) # I like esoteric packages!
library(RColorBrewer)
pheatmap(m2[,1:5], cluster_rows=F,cluster_cols=F, col=brewer.pal(10,"Set3"),border_color=NA)

pheatmappacakgeを使用して作成されたヒートマップ

于 2011-02-23T11:15:02.847 に答える
0

2つの数字は両方とも2つの数字を組み合わせたものでなければならないと思います。左側はヒートマップで、右側はクラスターの結果に基づいて色分けされています。もちろん、データはクラスターの結果によって並べ替える必要があります。ところで、質問は、質問の下にコメントされている2つの質問と似ていません。

于 2014-09-19T21:30:52.460 に答える