如果我有它们的坐标,如何使用 Perl 脚本从基因组浏览器 (UCSC) 中提取 DNA 序列?
问问题
1749 次
1 回答
6
您可以将DAS 序列请求通过管道传输到解析出包含该序列的 XML 元素的 Perl 脚本中。
例如,以下是curl
UCSC的DAS服务器的请求,丢弃标准错误,通过管道传送到parseSeq.pl
:
$ curl http://genome.ucsc.edu/cgi-bin/das/hg19/dna?segment=1:10000,10999 2>/dev/null | parseSeq.pl
的输出将是一个 XML 文档,其中包含来自人类基因组组装的curl
1000 个碱基 DNA 序列。该请求要求从第一个染色体开始从hg19
10000 到 10999(请记住 UCSC 是基于 0 的)。XML 将包含一些对日志记录和错误检查有用的其他内容。
将 XML 导入 Perl 脚本后,您可以使用 Perl 的XML::Simple模块快速解析出您想要的内容。
为了帮助您入门,您的parseSeq.pl
文件可能以:
#!/usr/bin/perl -w
use strict;
use XML::Simple;
use Data::Dumper;
my $xml = new XML::Simple;
my $ref = $xml->XMLin('-');
print Dumper $ref;
这个输出应该给你足够的开始来提取 DNA 序列$ref
。
于 2010-04-29T09:19:50.297 回答