【问题标题】:pheatmap - cytokine_annotationpheatmap - 细胞因子注释
【发布时间】:2017-09-25 08:10:00
【问题描述】:

我尝试在 pheatmap 中开发细胞因子注释并收到错误消息

seq.int(rx[1L], rx[2L], length.out = nb) 中的错误:'from' 必须是 有限的

R 版本 3.3.3 pheatmap_1.0.8

可重现的例子:

#Using cytokine annotations
M<-matrix(rnorm(8*20),ncol=8)
row_annotation<-data.frame(A=gl(4,nrow(M)/4),B=gl(4,nrow(M)/4))
eg<-expand.grid(factor(c(0,1)),factor(c(0,1)),factor(c(0,1)))
colnames(eg)<-c("IFNg","TNFa","IL2")
rownames(eg)<-apply(eg,1,function(x)paste0(x,collapse=""))
rownames(M)<-1:nrow(M)
colnames(M)<-rownames(eg)
cytokine_annotation=eg
pheatmap(M,annotation=annotation,row_annotation=row_annotation,annotation_legend=TRUE,row_annotation_legend=TRUE,cluster_rows=FALSE,cytokine_annotation=cytokine_annotation,cluster_cols=FALSE)

【问题讨论】:

    标签: r pheatmap


    【解决方案1】:

    在我的带有 pheatmap_1.0.8 的 R 3.3.3 上,以下代码有效:

    set.seed(1)
    M <- matrix(rnorm(8*20),ncol=8)
    row_annotation <- data.frame(A=gl(4,nrow(M)/4),B=gl(4,nrow(M)/4))
    eg <- expand.grid(factor(c(0,1)),factor(c(0,1)),factor(c(0,1)))
    colnames(eg) <- c("IFNg","TNFa","IL2")
    rownames(eg) <- apply(eg,1,function(x)paste0(x,collapse=""))
    rownames(M) <- 1:nrow(M)
    colnames(M) <- rownames(eg)
    cytokine_annotation <- eg
    library(pheatmap)
    pheatmap(M, annotation=cytokine_annotation, row_annotation=row_annotation,
                annotation_legend=TRUE, row_annotation_legend=TRUE, cluster_rows=FALSE,
                cytokine_annotation=cytokine_annotation, cluster_cols=FALSE)
    

    【讨论】:

      【解决方案2】:

      我也遇到了这个问题,发现只要重启 R 就解决了这个问题。

      【讨论】:

        猜你喜欢
        • 2023-03-08
        • 2020-01-08
        • 2016-01-22
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-12-27
        • 2022-06-14
        相关资源
        最近更新 更多