前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【R语言】获取基因组上某个区域内的SNP信息

【R语言】获取基因组上某个区域内的SNP信息

作者头像
生信交流平台
发布2022-09-21 17:44:08
1.2K0
发布2022-09-21 17:44:08
举报

有时候我们手上会有一些基因组的区域,当你想去看看这些区域里面是否包含一些比较重要的SNP(例如与疾病相关的SNP)的时候,大家一般会怎么做呢?

一种比较直接的方法是,先去UCSC下载所有的SNP信息

https://hgdownload.cse.ucsc.edu/goldenPath/hg19/database/

然后再用bedtools或者自己写个简单的脚本去看看每个SNP是否存在于给定的基因组区域内。这种方法的缺点在于你需要先去下载一个完整的SNP注释文件,snp151这个文件在解压之前有12G,估计下载都需要很久。解压之后估计更大。当然这种方法也有他的好处,就是一劳永逸。一旦下载到本地,以后就可以直接用了。

今天小编给大家介绍一个比较方便快捷的方法,这种方法不需要下载完整的SNP文件。当你的区域不多的时候,会比较方便快捷。

我们用到的工具叫biomart,前面小编也给大家介绍过这个工具

☞biomart基因ID转换,获取转录本类型

接下来我们看怎么利用biomart来获取基因组上某个区域内的SNP信息

代码语言:javascript
复制
#安装biomaRt包
BiocManager::install("biomaRt")

#加载biomaRt包
library(biomaRt)

#选择数据库和数据集
snpmart <- useMart(biomart = "ENSEMBL_MART_SNP", dataset="hsapiens_snp")
#attributes设置需要显示的SNP信息
#filters设置根据什么信息过滤SNP
#value是基因组的位置信息,chr8:148350-148612
#mart指定用什么数据库和数据集,就是刚刚定义的
snps <- getBM(attributes = c('refsnp_id','chr_name','allele','chrom_start','chrom_strand'),
              filters = c('chr_name','start','end'),
              values = list(8,148350,148612),
              mart = snpmart)
#显示获取到的SNP信息
snps
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-09-02,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信交流平台 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档