gpt4 book ai didi

r - 如何从 R pheatmap 获取色标值(行 z 分值)

转载 作者:行者123 更新时间:2023-12-05 07:35:30 24 4
gpt4 key购买 nike

我有以下数据框:

library(pheatmap)
library(RColorBrewer)

dat <- structure(c(36.28516213, -9.184523335, 5.716034994, 32.82180488,
-18.5467127, 22.79930301, -24.79075287, -49.23768715), .Dim = c(2L,
4L), .Dimnames = list(c("motif_a", "motif_b"), c("cow", "dog",
"snake", "cat")))

dat
#> cow dog snake cat
#> motif_a 36.285162 5.716035 -18.54671 -24.79075
#> motif_b -9.184523 32.821805 22.79930 -49.23769

并使用以下热图代码:

p <- pheatmap(
dat,
color = colorRampPalette(rev(RColorBrewer::brewer.pal(n = 7, name = "RdYlBu")))(1000),
clustering_method = "ward.D2",
border_color = "grey60",
clustering_distance_columns = "correlation",
clustering_distance_rows = "correlation",
fontsize_row = 6,
cluster_rows = TRUE,
cluster_cols = TRUE,
scale = "row"
)

我可以得到这个情节。

enter image description here

正如图中所指出的,我怎样才能得到相应的值热图中的每个点都对应于右侧色标。

例如,cow motif_b 的值为 -9.184523,但右手色标给出的值介于 0 到 -0.5 之间。我怎样才能得到这些值?

最终结果是一个数据框,其中包含已转换的值。我该怎么做?

最佳答案

当您指定 clustering_distance_xxx = "correlation" 时,您要求 pheatmap 绘制介于 -1 和 1 之间的 Pearson 相关性。运行 ?pheatmap 了解更多详情。

如果您从代码中删除这些部分,那么您将得到您期望的结果

library(pheatmap)
library(RColorBrewer)

dat <- structure(c(36.28516213, -9.184523335, 5.716034994, 32.82180488,
-18.5467127, 22.79930301, -24.79075287, -49.23768715), .Dim = c(2L,
4L), .Dimnames = list(c("motif_a", "motif_b"), c("cow", "dog",
"snake", "cat")))

myCol <- colorRampPalette(rev(RColorBrewer::brewer.pal(n = 7, name = "RdYlBu")))(8)

p <- pheatmap(
dat,
color = myCol,
clustering_method = "ward.D2",
border_color = "grey60",
clustering_distance_columns = "correlation",
clustering_distance_rows = "correlation",
fontsize_row = 6,
cluster_rows = TRUE,
cluster_cols = TRUE,
scale = "row"
)

p1 <- pheatmap(
dat,
color = myCol,
clustering_method = "ward.D2",
border_color = "grey60"
)

reprex package 创建于 2018-03-27 (v0.2.0).

关于r - 如何从 R pheatmap 获取色标值(行 z 分值),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49525711/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com