查看原文
其他

生信编程直播第10题:根据指定染色体及坐标得到位置信息

2017-04-18 生信菜鸟团 生信技能树

问题描述

这个题目是来源于生信编程直播学员的真实需求!                                                  

我也遇到过这个需求: 

任意给定基因组的 chr:pos, 判断它在哪个基因上面?这个程序难吗?基因的chr,start,end都是已知的 (这个文件需要下载,可以是UCSC,或者NCBI) 
学术一点讲述这个问题:已知CNV数据在染色体上的position如chr1:2075000-2930999,怎样批量获取其对应的Gene Symbol呢? 
而且还可以更复杂,我不仅想知道自己指定的坐标是否在某个基因上:如果在基因上,我还想知道在内含子还是外显子,进一步说是第几个外显子或者内含子!如果不在基因上,我想知道我指定的坐标距离哪一个基因的TSS(转录起始位点)最近呢?其实就是就是对指定位点或者区间做genomic features的注释!

当然,这个大把的已经造好的轮子可以做到,比如annovar,snpEFF,VEP就是做单个位点注释genomic features的,其它CHIP-seq的软件,都可以做单个区间的批量注释到genomic features!既然有现成的轮子,我推荐大家去学习一下就好了。

练习题

既然有现成的轮子,我推荐大家去学习一下就好了。我们的练习题还是简单一点好!就是指定位置注释是否在基因上面吧! 

01

02

03

04

05

06

07

08

09

10

chr7        148697841        148698941

chr7        148698942        148699029

chr7        148699911        148701053

chr7        148701109        148701307

chr7        148701354        148702694

chr7        148703100        148703520

chr7        148703831        148704175

chr7        148704484        148704734

chr7        148704857        148705937

chr7        148706271        148706671

首先,拿到上面文件里面每一个区间的序列,然后告诉我该区间是什么基因!所采用的坐标是hg38系统的。如果你不想写程序,那么熟练使用bedtools就可以了,bedtools这些简单的功能都可以实现。 
hg38的基因的起始坐标是: 
因为这个比较复杂,所以我就专门写了一个帖子来做这件事:

历史题目:

生信编程直播第0题-生信编程很简单!

生物信息学技能面试题(第1题)-人类基因组的外显子区域到底有多长

生物信息学技能面试题(第2题)-探索人类基因组序列

生物信息学技能面试题(第3题)-探索人类基因组注释文件

生物信息学技能面试题(第4题)-多个同样的行列式文件合并起来

生物信息学技能面试题(第5题)-根据GTF画基因的多个转录本结构

生物信息学技能面试题(第6题)-下载最新版的KEGG信息,并且解析好

生信编程直播第七题:写超几何分布检验!

生信编程直播第八题:ID转换大全

生信编程直播第9题-根据指定染色体及坐标得到参考碱基

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存