Posted on

第一种方法

这种方法的优点是速度较快,但略复杂,适合需要快速获取大批量坐标位置的情形,具体做法如下:

http://pythonhosted.org/twobitreader/ 提供了一个方便的小工具

python -m twobitreader hg19.2bit < example.bed

染色体的位置信息在 bed 文件中给出,.2bit 文件格式是 UCSC Genome Browser 的基因组序列文件索引格式,可以在

http://hgdownload.soe.ucsc.edu/goldenPath/hg19/bigZips/

下载到。UCSC Genome Browser 也提供了命令行工具可以从基因组序列文件生成 .2bit 文件。

twobitreader 可以用 pip 直接安装,也可以在

https://pypi.org/project/twobitreader/#files

下载源码安装。


第二种方法

这种方法的优点是简单,缺点是速度较慢,而且输出数据的格式是 XML。

通过 ucsc genome browser 提供的在线工具,例如想获取 chr13:32890466-32890664 区域上的 DNA 序列,访问如下 url

http://genome.ucsc.edu/cgi-bin/das/hg19/dna?segment=chr13:32890466,32890664

可以得到 chr13 上,start = 32890466, end = 32890664 之间的染色体序列。需要注意的是输出的是 xml 格式的数据。

PS:基于这个方法可以用R语言写个shiny小程序,因为用的不多,我还没准备写,如有需要可以留言。


第三种方法

利用 samtools 的 faidx 工具,方法如下:

首先用 faidx 生成 fasta 序列文件索引

samtools faidx hg19.fa

然后利用命令行获取染色体区域序列

samtools faidx hg19.fa chr13:32890466-32890664

这种方法所得输出是 fasta 格式序列。

————————————————

原文链接:

https://blog.csdn.net/klcola/article/details/104032155

发表评论

邮箱地址不会被公开。 必填项已用*标注