【问题标题】:co-occurence matrix - heat maps共现矩阵 - 热图
【发布时间】:2018-02-05 19:05:41
【问题描述】:

我有一个包含 20 多列和 2000 多行的大型数据集。我想知道不同变量同时发生的时间。此外,最好从中制作热图(共现热图或相关热图)。但是,我不确定您是否可以使用虚拟/二进制变量来执行此操作。有小费吗?

我需要转换这个示例数据集 (x)

    A   B   C   D   E   F
1   0   1   1   1   1   0
2   0   1   1   0   0   1
3   1   0   0   0   1   0
4   0   0   1   1   1   1
5   0   0   1   1   0   0

变成这样:

    A   B   C   D   E   F
A   0   0   0   0   1   0
B   0   0   2   1   1   1
C   0   2   0   3   2   2
D   0   1   3   0   2   1
E   1   1   2   2   0   1
F   0   1   2   2   1   0

【问题讨论】:

    标签: r heatmap


    【解决方案1】:

    给定一个矩阵X,我们有

    (A <- t(X) %*% X)
    #   A B C D E F
    # A 1 0 0 0 1 0
    # B 0 2 2 1 1 1
    # C 0 2 4 3 2 2
    # D 0 1 3 3 2 1
    # E 1 1 2 2 3 1
    # F 0 1 2 1 1 2
    

    如果您希望对角线包含零,请添加diag(A) &lt;- 0。然后可以使用例如

    获得热图
    heatmap(A, Rowv = NA, Colv = NA)
    

    【讨论】:

    • 非常感谢您的帮助。但是,我收到此错误: t(Data) %*% Data 中的错误:需要数字/复数矩阵/向量参数
    • 好的。使用 A
    • @Tvdv,你可能想看看stackoverflow.com/help/someone-answers
    【解决方案2】:
    temp = sapply(colnames(A), function(x)
        sapply(colnames(A), function(y)
            sum(rowSums(A[,c(x, y)]) == 2)))
    diag(temp) = 0
    temp
    #  A B C D E F
    #A 0 0 0 0 1 0
    #B 0 0 2 1 1 1
    #C 0 2 0 3 2 2
    #D 0 1 3 0 2 1
    #E 1 1 2 2 0 1
    #F 0 1 2 1 1 0
    
    library(reshape2)
    library(ggplot2)
    
    df1 = melt(temp)
    
    graphics.off()
    ggplot(df1, aes(x = Var1, y = Var2, fill = value)) +
        geom_tile() +
        theme_classic()
    

    数据

    A = structure(list(A = c(0L, 0L, 1L, 0L, 0L), B = c(1L, 1L, 0L, 0L, 
    0L), C = c(1L, 1L, 0L, 1L, 1L), D = c(1L, 0L, 0L, 1L, 1L), E = c(1L, 
    0L, 1L, 1L, 0L), F = c(0L, 1L, 0L, 1L, 0L)), .Names = c("A", 
    "B", "C", "D", "E", "F"), class = "data.frame", row.names = c("1", 
    "2", "3", "4", "5"))
    

    【讨论】:

      猜你喜欢
      • 2023-03-03
      • 1970-01-01
      • 2012-10-28
      • 1970-01-01
      • 2016-03-09
      • 2013-12-12
      • 2017-05-30
      • 2016-11-12
      • 1970-01-01
      相关资源
      最近更新 更多