Ziehen Sie Gene / Beobachtungen aus cutree_rows-Gruppen in der Pheatmap heraus
Dec 17 2020
Wie können Sie die Gene / Beobachtungen aus den von cutree_rows = 3
in generierten Zeilengruppen herausziehen pheatmap
? wäre ?obj$tree_row$...
obj <- pheatmap(mat, annotation_col = anno, fontsize_row = 10, show_colnames = F, show_rownames = F, cutree_cols = 3, cluster_cols = FALSE, color = col, scale = 'row',cutree_rows = 3)
Ich habe gesehen, dass Sie die Genliste finden können, wenn Sie k Mittel anwenden, indem Sie wie hier laufen. Gibt es eine Möglichkeit, die Clusterbildung in einer Heatmap beizubehalten, aber die Anzahl der Beobachtungen zu verringern?obj$kmeans$cluster
Antworten
1 StupidWolf Dec 17 2020 at 10:06
Sie können es einfach noch einmal schneiden, also sind die Daten zum Beispiel wie folgt:
set.seed(2020)
mat = matrix(rnorm(200),20,10)
rownames(mat) = paste0("g",1:20)
obj = pheatmap(mat,cluster_cols = FALSE, scale = 'row',cutree_rows = 3)

Mach Cutree:
cl = cutree(obj$tree_row,3)
ann = data.frame(cl)
rownames(ann) = rownames(mat)
ann
cl
g1 1
g2 2
g3 1
g4 2
g5 3
g6 1
g7 2
g8 1
g9 1
g10 2
g11 3
g12 2
g13 2
g14 1
g15 2
g16 2
g17 1
g18 3
g19 3
g20 2
Wir zeichnen dies erneut, um zu sehen, ob es korrekt ist.
pheatmap(mat,cluster_cols = FALSE, scale = 'row',cutree_rows = 3,annotation_row=ann)
