Pheatmap में cutree_rows समूहों से जीन / टिप्पणियों को बाहर निकालें

Dec 17 2020

कैसे आप से उत्पन्न पंक्ति समूहों से जीन / टिप्पणियों को बाहर खींच कर सकते हैं cutree_rows = 3में pheatmap? होगा ?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)

मैंने देखा है कि आप जीन सूची प्राप्त कर सकते हैं यदि आप k का अर्थ लागू करते हैं जैसे कि यहां चल रहा है तो एक हीटमैप में क्लस्टरिंग को संरक्षित करने का एक तरीका है लेकिन टिप्पणियों की संख्या कम करें?obj$kmeans$cluster

जवाब

1 StupidWolf Dec 17 2020 at 10:06

आप इस पर फिर से कटिंग कर सकते हैं, इसलिए उदाहरण के लिए डेटा ऐसा है:

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)

कट करें:

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

हम इसे सही होने के लिए फिर से प्लॉट करते हैं,

pheatmap(mat,cluster_cols = FALSE, scale = 'row',cutree_rows = 3,annotation_row=ann)