You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用R语言pheatmap绘制基因表达量热图及聚类报错求助

问题原因与可运行代码

报错核心原因有三点:

  1. 表达矩阵中存在基因行所有样本表达值完全一致,行标准化后产生Inf/NA值,导致聚类计算失败
  2. 参数拼写错误:pheatmap关闭列聚类的参数为cluster_cols,你编写的cluster_column是无效参数,不会被识别
  3. 缺少文献要求的「行采用相关性聚类距离」配置,pheatmap默认使用欧氏距离,需要额外指定参数

完整运行代码

# 首次运行请先安装依赖包,去掉前面的#执行即可
# install.packages(c("pheatmap","RColorBrewer"))
library(pheatmap)
library(RColorBrewer)

# 读取原始数据
df <- read.delim("R.txt", header=T, row.names="Gene")
df_matrix <- data.matrix(df)

# 预处理:删除标准差为0的基因行,避免标准化后产生无效值
df_matrix_filter <- df_matrix[apply(df_matrix, 1, function(x) sd(x) != 0), ]
# 如果你的数据存在缺失值,可加下面这行把缺失值替换为0
# df_matrix_filter[is.na(df_matrix_filter)] <- 0

# 绘制符合文献要求的热图
pheatmap(
  mat = df_matrix_filter,
  main = "Heatmap of Extracellular Genes",
  # 匹配文献要求:行采用相关性聚类距离
  clustering_distance_rows = "correlation",
  clustering_method = "complete",
  # 关闭列聚类
  cluster_cols = FALSE,
  # 行标准化,放大基因在不同组的表达差异
  scale = "row",
  color = colorRampPalette(rev(brewer.pal(n = 10, name = "RdYlBu")))(10),
  show_rownames = TRUE,
  drop_levels = TRUE,
  fontsize = 5,
  fontsize_col = 10,
  cellwidth = 40
)

内容的提问来源于stack exchange,提问作者Huzaifa Arshad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 03:36:04