美文网首页
UpSetR可视化多个数据集的交集

UpSetR可视化多个数据集的交集

作者: 北欧森林 | 来源:发表于2021-02-01 04:35 被阅读0次

    数据集较多(超过5个)时,使用常规的韦恩图进行交集可视化时就显得捉襟见肘了。UpSetR包可以很好地解决这个问题。

    UpSetR支持两种数据形式的输入,直接命令行输入和文件形式输入。直接命令行输入也有两种形式的表达方式,一种是直接输入要比较的列表即可,另一种是输入已经计算好交互数量的值。

    1. 安装或者加载UpSetR包
    # install.packages('UpSetR')
    library(UpSetR)
    
    1. 示例数据
    expressionInput <- c(one = 2, two = 1, three = 2, 
                         `one&two` = 1, `one&three` = 4, `two&three` = 1, `one&two&three` = 2)
    upset(fromExpression(expressionInput))
    
    UpSetR_fig1.png
    1. UpSetR自带的示例文件(mutations.csv)能够很方便地帮助我们学习其支持的文件输入格式。该文件存储以逗号分隔的矩阵数据,包含100个gene的283个特性,其中“1”表示该基因有此特性,“0”表示该基因无此特性。UpSetR会计算全部基因中特性为1的交集个数。在默认情况下,UpSetR默认输出交集个数大于0的组合。
    mutations <- read.csv(system.file("extdata", "mutations.csv",
                                      package = "UpSetR"), header = T, sep = ",")
    upset(mutations)
    
    UpSetR_fig2.png
    1. 除了默认模式,UpSetR还支持指定需要交互的列以及输出交集个数为0的组合。
    upset(mutations, sets = c("PTEN", "TP53", "EGFR", "PIK3R1", "RB1", "SPTA1"), 
          sets.bar.color = "red",order.by = "freq", empty.intersections = "on")
    
    UpSetR_fig3.png

    在这个示例中,我们指定了6个待交互的元素,并设置颜色为红色,同时令交互个数为0的组合也显示出来,并按照交集个数由大到小排列。

    参考资料:
    超过六个元素的韦恩图你就玩不转了? (微信公众号:生信草堂)

    相关文章

      网友评论

          本文标题:UpSetR可视化多个数据集的交集

          本文链接:https://www.haomeiwen.com/subject/mxtdtltx.html