R语言提取韦恩图交集信息

本文介绍了如何使用R语言的VennDiagram包绘制韦恩图,并详细讲解了如何从韦恩图中提取交集基因信息。通过示例数据展示了从CSV文件读取基因集合,生成韦恩图,然后利用get.venn.partitions函数获取交集数据框,并进行数据清洗,最后将结果保存到文件的过程。
摘要由CSDN通过智能技术生成

背景

最近看“生信技能树”R语言相关教程,发现对于常见的韦恩图操作中,有这样的一个需求:不仅需要得到venn图还希望提取交集的元素信息。联想到之前自己项目中有这一部分,故整理。

Venn图绘制

输入数据:

原始输入数据是当时项目中得到三个基因集中的相关差异基因。 alt

出图:

首先将三个基因集中基因保存至“venn_list”变量中;通过R包“VennDiagram”中的“venn.diagram”函数可以一键出图,其中通过"filename"参数指定保存的路径及文件名; 最终效果图如下: alt

提取交集元素

首先通过“get.venn.partitions”函数拿到交集信息存为变量“inter”,为数据框(内容如下),结合上述venn图很容易理解下述表格信息; 接下来就是进行数据清洗的内容,拿到我们想要的交集信息,并保存至文件。 alt

#读取CSV文件
dat <- read.csv("Diff_Groups.csv", header = T)

G8671_list <- dat$G8671_Groups[1:482]
G37364_list <- dat$G37364_Groups[1:318]
TCGA_list <- dat$TCGA_Groups[1:2984]

#韦恩图(VennDiagram 包,适用样本数 2-5)
library(VennDiagram)

#指定统计的分组列,并设置作图颜色、字体样式等
venn_list <- list(G8671 = G8671_list, G37364 = G37364_list, TCGA = TCGA_list)
venn.diagram(venn_list, filename = 'venn.png', imagetype = 'png'
             fill = c('red''blue''green'), alpha = 0.50
             cat.col = c('red''blue''green'), cat.cex = 1.5, cat.fontfamily = 'serif',
             col = c('red''blue''green'), cex = 1.5, fontfamily = 'serif')

inter <- get.venn.partitions(venn_list)
for (i in 1:nrow(inter)) inter[i,'values'] <- paste(inter[[i,'..values..']], collapse = ', ')
write.table(inter[-c(56)], 'venn_inter.txt', row.names = FALSE, sep = '\t', quote = FALSE)

本文由 mdnice 多平台发布

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值