美文网首页
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