通过基因ID从GFF文件中获取基因位置

由于OMIM上的位置是参考基因组GRch38,所以在进行hg19版本的annovar注释时,需要转化为hg19的,根据OMIM数据库上的提示,我们可以从gff文件中获取对应的位置。(说一下个人想法:我们看到要进行位置转化,首先想到是用UCSC上的liftover进行转化,或者是NCBI上的remap进行转化,但是据说这个在2023年11月就要停止了。如果对整个数据的查看,就会发现位置不是唯一性的,里面很多同一个位置对应好几个MIM number或者好几个Entrez Gene ID,可能是这个位置太长了,里面对应的基因太多,所以如果我们简单的进行位置转化,在注释的时候,根据位置匹配,就会出现多个基因,最好的是根据OMIM数据库给的提示操作,把对应的位置范围缩小,才能更精准)

从gff文件根据MIM number或者Entrez Gene ID来获取位置,尝试使用R,python(biopython、bcbio-gff)。R是因为安装包容易报错,bcbio-gff可以解析gff文件,但是因为gff文件太大,python在处理时速度慢,均放弃。也尝试过在线网站bioDBnet转化,结果为GRch38,也放弃。最后用shell处理。

cut -f1 id.txt |sed 1d | sed '/^$/d'| while read i;do zgrep $i GRCh37_latest_genomic.gff.gz;done | perl -alne '{next unless $F[2] eq "gene"; ;/ID=gene:(.*?);/; print "$F[0]\t$F[3]\t$F[4]\t$F[8]"}'

id.txt文件的列名:MIM number  Gene Symbols Entrez Gene ID,先提取第一列(MIM number ),然后去掉第一行,再去掉空行,之后对每行MIM number循环读取,在GFF文件中寻找(而且只要GFF中gene的信息),并将相关信息匹配提取出来,因为还需要核对,所以输出内容是整行完整的。

假设有以下 snplist: ``` rs1000001 rs1000002 rs1000003 ``` 使用 ANNOVAR 获取这些 snplist 所对应的基因位置信息的命令如下: ``` annotate_variation.pl -downdb -buildver hg19 -webfrom annovar snp138 avsnp147 -outfile snp_info rs1000001 rs1000002 rs1000003 ``` 其,`-buildver hg19` 表示使用 hg19 版本的基因组参考序列;`-webfrom annovar snp138 avsnp147` 表示从 ANNOVAR 官方网站下载 snp138 和 avsnp147 两个数据库;`-outfile snp_info` 表示将结果输出到 snp_info 文件;`rs1000001 rs1000002 rs1000003` 表示要获取这三个 snplist 的基因位置信息。 输出结果如下: ``` Chr Start End Ref Alt rsID Func.refGene Gene.refGene GeneDetail.refGene ExonicFunc.refGene AAChange.refGene cytoBand avsnp147 chr1 10177 10177 A AC rs367896724 intergenic chr1 10235 10235 T C rs376342519 intergenic chr1 10352 10352 G T rs540431307 intergenic ``` 其,每行代表一个 snplist 的基因位置信息。第一列为染色体名称,第二列为起始位置,第三列为终止位置,第四列为参考基因,第五列为突变基因,第六列为 rsID,第七列为该 snplist 在基因组上的功能注释,第八列为该 snplist 所在的基因,第九列为该 snplist 所在的基因的详细信息,第十列为该 snplist 在编码区的功能注释,第十一列为该 snplist 在编码区的氨基酸改变信息,第十二列为该 snplist 所在的细胞染色体带信息,第十三列为该 snplist 在 avsnp147 数据库信息
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值