得到一个物种所有基因的TSS(转录起始位点)区域的bed文件。

首先在UCSC的table browser 里面下载下面这个文件:

可以看到我这里选择的mm10的refseq系统的所有基因,共有29037个不同的tss,36872个转录本,只有24540个基因,说明有部分基因有多个tss,这个其实挺麻烦的。

#bin    name    chrom   strand  txStart txEnd   cdsStart    cdsEnd  exonCount   exonStarts  exonEnds    score   name2   cdsStartStat    cdsEndStat  exonFrames0    NM_001282945    chr1    -   134199214   134235457   134202950   134234355   3   134199214,134234014,134235227,  134203590,134234446,134235457,  0   Adora1  cmpl    cmpl    2,0,-1,0    NM_001039510    chr1    -   134199214   134235457   134202950   134234355   3   134199214,134234014,134235227,  134203590,134234412,134235457,  0   Adora1  cmpl    cmpl    2,0,-1,0    NM_001291930    chr1    -   134199214   134235457   134202950   134203505   2   134199214,134235227,    134203590,134235457,    0   Adora1  cmpl    cmpl    0,-1,0    NM_001291928    chr1    -   134199214   134234856   134202950   134234733   2   134199214,134234662,    134203590,134234856,    0   Adora1  cmpl    cmpl    2,0,0    NM_001008533    chr1    -   134199214   134235457   134202950   134234355   2   134199214,134234014,    134203590,134235457,    0   Adora1  cmpl    cmpl    2,0,

其实里面可以设置直接下载所有基因的TSS区域的bed文件,可是我不会设置各种参数,也懒得去摸索,直接对上面的文件我可以写脚本处理得到需要的数据形式。 需要输出的是bed格式文件,如下: chrom / chromStart /chromEnd /name /score /strand 我这里定义的TSS(转录起始位点)区域上下游2.5kb,所以代码如下:

perl -alne '{next if /^#/;if($F[3] eq "+"){$start=$F[4]-2500;$end=$F[4]+2500}else{$start=$F[5]-2500;$end=$F[5]+2500}print join("\t",$F[2],$start,$end,$F[12],0,$F[3])}' ucsc.refseq.txt |sort -u >ucsc.refseq.tss.bed

最后得到的文件如下:

tail ucsc.refseq.tss.bed chrY    816212  821212  Uba1y   0   +chrY    81798997    81803997    Gm20747 0   -chrY    82222714    82227714    Gm20736 0   +chrY    83925411    83930411    Gm20854 0   -chrY    85527019    85532019    Gm20854 0   -chrY    8832669 8837669 Gm20815 0   -chrY    895287  900287  Kdm5d   0   +chrY    90752550    90757550    G530011O06Rik   0   -chrY    90782941    90787941    Erdr1   0   +chrY    90836906    90841906    G530011O06Rik   0   

这里面会有一个问题,对于部分基因在非正常染色体的,会出现如下诡异的结果,建议干脆删除掉。

chr4_GL456216_random    13380   18380   Dhrsx   0   +chr4_GL456350_random    -1369   3631    Ccl21c  0   -chr4_GL456350_random    -1369   3631    Gm10591 0   -chr4_GL456350_random    -1369   3631    Gm13304 0   -

记住,这个时候,部分基因还有多个tss哦,反正取决于你的下游分析流程啦。

原文发布于微信公众号 - 生信技能树(biotrainee)

原文发表时间:2017-07-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏针针小站

【Phi】斐讯K2 – 从编程器到刷机

CPU:MEDIATEK MT7620A 580MHZ RAM:64MB DDR2 SDRAM FLASH:8M 25Q64CS1G Flash 2.4G...

1.2K10
来自专栏后端技术探索

nginx防止DDOS攻击配置(二)

我们用的高防服务器只防流量攻击不防CC,现在的攻击多数都是混合型的,而且CC攻击很多,防CC只能自己搞了,按照第一篇的配置,在实际的使用中效果并不理想。限制每秒...

62020
来自专栏猿湿Xoong

咦,Oreo怎么收不到广播了?

31740
来自专栏云计算

配置OpenStack VM启用多张网卡

[这篇文章是由巴拉克·梅里莫维奇撰写的。] 我们已经在之前的文章中广泛讨论了OpenStack网络。在这篇文章中,我想深入讲解一个更高级的OpenStack...

58570
来自专栏杨建荣的学习笔记

假期前的数据库检查脚本之主备关系(r11笔记第46天)

快过年了,很多系统都要进入最后的检查和复验阶段,一方面在节假日前,提前发现问题总比过节的时候发现要好。另一方面如果出现故障的时候能及时进行处理,这个时候我们就需...

299100
来自专栏FreeBuf

树莓派随身工具箱:中间人劫持获取控制权

上文讲解了树莓派随身工具箱的环境搭建,这段时间又对其进行了一些优化,主要是从便携美观上面改进。同时,在实际使用中发现了一些问题,并做了小小的改动。

33830
来自专栏FreeBuf

极客DIY:使用Arduino制作一块开源手表

1 - 引言 首先让我们看下这个项目要考虑到的问题: 1.)使用100%Arduino兼容性硬件 2.)保证存储器足够大可以装下大量的稍后会扩展的新内容 ...

32560
来自专栏生信宝典

生信宝典之傻瓜式 (五) - 文献挖掘查找指定基因调控网络

如何快速查找指定基因的调控网络介绍了使用在线查询数据库 (http://evexdb.org/)对PubMed和PubMed Central中发表文章的摘要和全...

28590
来自专栏杨建荣的学习笔记

关于SQLRecoverableException问题的排查和分析(r4笔记第13天)

上周在升级时候,客户反馈某个job报了下面的错误,想让我们查看一下是不是数据库这边有什么问题。 报错的内容如下。 Caused by: java.sql.SQ...

30040
来自专栏NetCore

微信公众平台快速开发框架 For Core 2.0 beta –JCSoft.WX.Core 5.2.0 beta发布

写在前面 最近比较忙,都没有好好维护博客,今天拿个半成品来交代吧。 记不清上次关于微信公众号快速开发框架(简称JCWX)的更新是什么时候了,自从更新到支持.Ne...

29880

扫码关注云+社区

领取腾讯云代金券