BEGINNERS HOWTO
原作者
版权
原作者保留版权,基于 Perl Artistic License协议可有限共享。
摘要
基于生物学者需要,此HOWTO文档主要是关于如何利用Bioperl进行脚本编程,来进行生物信息学方面的研究。Bioperl是开源的生物信息学工具箱,并且有独立的社区支持。Bioperl其实是一些Perl模块的集成,提供了生物信息学分析的Perl基本模块。虽然有简单的使用例子,但是没有针对具体需要的脚本例子。(译者注:HOWTO文档是基于具体任务的,对生物学者更有针对性。)
入门简介
如果你是在做分子生物学的研究,并且用一些常规的方法对基因和蛋白质序列进行分析。也许你想要把这些任务自动化,或者你只是想学一下生物信息学方面的编程技术。这个HOWTO正合你意。此文档会讲述一些Bioperl的常见应用,比如:利用BLAST进行序列分析,以及从公共数据库中提取序列。有时候会把很多不同的任务放在一起,这时候bioperl就显得非常强大高效。
不可避免会有一些晦涩的编程术语。如果你对编程越了解越好。不太了解也不必担心,这里只是介绍一些基本的编程知识。另外会有一些模块化和面向对象编程的基础内容,如果你需要写一些复杂的脚本,这一点是必须要掌握的。
当学习一门新技术的时候,所面临的挑战之一就是专业术语的学习。编程也不例外。耐心是最好的解决办法!你要知道,学计算机的再去学生物照样十分头疼,有木有!!!
注:bioperl中有一个模块,Bio::Perl,适用于Bioperl新手入门。(译者注:把bioperl一些基本应用转化成函数的形式调用,而不是大量的模块,更易于新手理解。)但这个HOWTO文档并不介绍这个模块,因为这只是其中一个很小的模块,不是真正的面向对象的,且不具备扩展性。这里会主要介绍Bioperl的核心,以及如何举一反三利用好Bioperl。
安装BIOPERL
安装Bioperl是首要任务。总是不断的有人问关于安装的问题。下面三点是问的最多的问题:
- 在windows下,会出现“Error: Failed to download URL http://bioperl.org/DIST/GD.ppd”,或者“Error: Failed to download URL http://bioperl.org/DIST/GD.ppd”等错误信息。这说明有一些安装Bioperl必须的Perl模块没有被安装,你需要手动安装这些模块。详见“在windows上安装Bioperl”。
- 在Unix下,类似“Can’t locate <some module>.pm in @INC…”的错误信息说明这个模块没有安装。详见“在Unix下安装Bioperl”。
- “Tests Failed”错误信息表明在安装过程中有些模块安装是测试不成功,可能会影响今后的使用。Bioperl大约有1一千多个模块,安装时会进行一万多个测试。(译者注:复杂性难以想象,很难避免出错。)一般这种情况出现在GD模块上,GD只和Bio::Graphics相关,不影响其他的模块;XML parser也可能出现这种情况,但也只是影响到读取XML文件。如果要把所有模块安装成功,需要大量的工作。(译者注:新手勿入)
(译者注:将来会专门翻译“安装bioperl”、在windows上安装Bioperl”和“在Unix下安装Bioperl”。)
获取帮助
在安装和使用Bioperl过程中,出现问题是不可避免的。可以给bioperl-l@bioperl.org邮件列表发邮件寻求帮助。有一批专业人员维护此邮件列表,并提供答复。在询问是,尽量提供详细的信息,这样他们才能有效的帮助你解决问题。
需要提供的信息包括但不限于以下几点:
1. 所使用的Bioperl版本号
2. 操作系统
3. 你的目的
4. 代码
5. 所有出现的错误信息
总是会有人给bioperl-l发邮件抱怨自己的问题没有被回复。一般原因是因为没有提供以上的所有信息,通常是没有提供代码和错误信息。
关于PERL
如果想学习更多关于Perl的知识,下面列举了一些学习资源:
- Learning Perl是最流行的perl入门书籍。(译者注:google之,很多免费下载链接,包括中文翻译版《perl语言入门》。)
- Perl in a Nutshell也很好。提供的例子可能并不那么好,但覆盖了大量的内容。
- Perl有自己的文档。试着在命令行中输入“perldoc perl”查看perl帮助文档。对于特定的模块,输入“perldoc <模块名字>”,可以查看关于此模块的帮助文档。举例说明:
[shell]perldoc Bio::SeqIO[/shell]
写脚本
万事开头难。对初学者来说最困难的莫过于写个简单的脚本并运行成功。
在Unix环境下,一般在命令行(shell)环境下工作。可在命令行中用这个命令查看Perl版本(译者注:windows下同样有效。以下命令除特殊说明外,默认在Unix系统下):
- perl –v
输出结果:
- This is perl, v5.10.0 built for cygwin-thread-multi-64int
- Copyright 1987-2007, Larry Wall Perl may be copied only under the terms of
- either the Artistic License or the GNU General Public License, which may be
- found in the Perl 5 source kit.
- Complete documentation for Perl, including FAQ lists, should be found on this
- system using "man perl" or "perldoc perl". If you have access to the Internet,
- point your browser at http://www.perl.org/, the Perl Home Page.
最好使用最新版本,5.4一下的版本可能会有些问题。查看Perl程序所在的位置
- which perl
输出类似结果:
- /bin/perl
知道perl的位置就可以编写脚本,在脚本中的第一行指定Perl所在位置,然后就可一通过Perl来运行此脚本。在Unix下,emacs和vi都是比较强大的命令行文本编辑器,另外,nano或pico比较简单,容易上手。有些Unix系统可能没有自带这些编辑器,自行安装即可。Widows下记事本或者写字板都可。(译者注:Mac下推荐BBEdit,windows下推荐notepad++,都有语法高亮等强大功能。)
开始写脚本:
- emacs seqio.pl
第一行中输入:
- #!/bin/perl