【问题标题】:is there a way to preserve the clustering in a heatmap but reduce the number of observations?有没有办法在热图中保留聚类但减少观察次数?
【发布时间】:2017-05-05 12:41:58
【问题描述】:

我的数据集包含 20 列中的 90 个观察值(行)。我已经生成了一个非常简洁的热图,它使用包 pheatmap 将我的数据分为两组。虽然它并不完全干净,但根据我的条件,这两个树状图簇几乎将我的样本分成了 2 个不同的组。现在我想将这 90 个集合减少到更严格的 20-30 个观察值集合,但仍希望保留与pheatmap 中所示相同的聚类顺序。有没有办法做到这一点?或任何其他将我的观察结果减少到最小集的软件包,该集仍可以通过聚类顺序保留,如现在所见? pheatmap 的代码是

pheatmap(mydata[rownames(df.90),],scale="row",clustering_distance_cols = "correlation",show_rownames= T,show_colnames=T,color=col,annotation=batch.annotation,cluster_col=T,fontsize_row = 8,fontsize_col = 8,clustering_method = "ward.D2",border_color = NA,)

R 中我遗漏的任何包都可以处理 pheatmap 中的此类甚至某些内容,我可以将其用作减少变量的函数并进行一种置换测试以找到仍然可以保留我的聚类

数据是患者的行中的基因和列中的表达。

【问题讨论】:

    标签: r permutation hclust pheatmap


    【解决方案1】:

    我想回答我自己的问题并希望得到反馈。我在 pheatmap 中使用了kmeans_k=30 并获得了 29 个集群,这些集群仍然能够保留我之前进行的 90 个观察的集群。从那里我获得了它们各自簇中的基因。我从观察结果两侧的热图中选择了前 5 个集群,它们仍然可以产生我所需的热图,因为它们是具有高 SD 的集群。由于在我的 pheatmap 中,我有 scale="row" 并同时保持 row dendrogram 和 col dendrogram,所以我现在也不想改变它们。因此,当我现在绘制这 31 个基因(观察值)时,实际上它们进一步改善了我的行聚类,并以我想要的更清晰的方式将它们完全划分为 2 组。 kemans 代码和新热图

    kmeans 30

    obj<-pheatmap(df.90,scale="row",clustering_distance_cols = "correlation",show_rownames= T,show_colnames=T,color=col,annotation=batch.annotation,cluster_col=T,fontsize_row = 6,fontsize_col = 7,clustering_method = "ward.D2",border_color = NA,cellwidth = NA,cellheight = NA,kmeans_k = 30)
    

    检索聚类并提取观察结果/基因

    obj$kmeans$cluster
    

    获取顶部聚类并使用热图绘制它们

    pheatmap(mydata[rownames(df.31),],scale="row",clustering_distance_cols = "correlation",show_rownames= T,show_colnames=T,color=col,annotation=batch.annotation,cluster_col=T,fontsize_row = 8,fontsize_col = 8,clustering_method = "ward.D2",border_color = NA,)
    

    你们如何看待这种方法?它不像我想要的那样,但我认为它也没有错。如果有人可以提供更好的方法或方法,或者他们认为这也不正确,我想得到反馈。谢谢

    【讨论】:

    • 这太棒了! @vchris_ngs 如果您想从cutter_rows = 3 而不是kmeans_k= 3 中检索和提取集群中的观察值/基因,那将类似于... obj2$tree_row$...?
    猜你喜欢
    • 2019-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多