'Perl' Category

  • Perl打印哈希

    四月 24, 2011

    对于学过C之后再学Perl的人来说印象比较深刻的就是:Perl可以一次性把整个数组打印出来,而C就不行。
          比如,对于一个数组(1,2,3,4,5),在C中只能这么办:
    点击此处继续阅读 ^_^

  • 初品BioPerl(第七篇:对象的类型)

    一月 16, 2011

    时常听到有人说,XXX语言是面向过程的,而XXX语言是面向对象的……我认为这种说法不是很妥当,面向过程和面向对象只是一种编程的思路而已,和具体的编程语言无关。Perl应该算是一种面向过程的语言(它可以写得很像C的风格,虽然我不大喜欢),但如果你大量调用了BioPerl的模块,它就是一种不折不扣的面向对象的思路。
          因为我们是在调用别人编写的(标准的)BioPerl模块,所以里面使用到的各种对象的结构都是别人已经定义好的,我们无须了解内部的细节。但是了解一下这个对象的类型却是很有必要的,因为它关系到你能够调用这个对象的哪些属性和方法。比如,一写出 $seq_obj,可以想到它能调用 ->seq这样的方法;而一写出 $seqio_obj,可以想到它能调用 ->next_seq 这样的方法。如何查看一个对象的类型呢?很简单,用ref函数。
          下面可以来复习下之前提过的各种对象。
    点击此处继续阅读 ^_^

  • 初品BioPerl(第六篇:从远程数据库下载序列之二)

    十二月 12, 2010

    假设我们现在要下载两条Genbank格式的序列,它们的编号分别是AC013798和AC021953,你也许会试着这么写:

    @seq_obj = $db_obj -> get_Seq_by_acc('AC013798','AC021953'); 

    点击此处继续阅读 ^_^

  • 初品BioPerl(第六篇:从远程数据库下载序列之一)

    十一月 30, 2010

    相信大家都等不及了!以前的序列都是自己手动从网上下载下来的,万一序列很长而国际网速又很慢的话,你的浏览器就会被折腾得死去活来。所以你一定很想知道是否使用BioPerl下载起来能方便一些。
          但在这之前,我还是要先唠叨几句:
         (1)Perl的主要任务是处理文本文件。远程下载只是作为一个扩展功能,所以能不用的话尽量别用,不要让你的Perl太吃力。
         (2)你仍然需要有一个稳定的国际网络连接,否则下载到一半即终止是很头疼的事情。
         (3)想清楚你要下载什么物种的序列。如果是人、酵母这样的标准模式生物,还是先去问一下系统管理员吧!说不定他早已经帮大家下载好并放到某个公共的目录里了,你再下载一遍的话又浪费空间又浪费带宽(存放人类全基因组的gbk文件估计有几个G),浪费就是极大的犯罪。如果你发现好心的系统管理员已经帮你下载好了序列,你只需将它们链接到自己的目录下面即可(注意是链接而不是复制,否则主机又白白浪费了一倍的空间)。
         (4)到ftp://ftp.ncbi.nih.gov/genomes上(或者你知道的其他ftp服务器上)找一下你需要的物种基因组是不是已经在上面了。请找仔细一点。如果找到了,就不要麻烦Perl了,还是使用lftp命令连接到ftp上,使用get(或mget)命令直接下载文件吧,多方便!
         (5)如果很不幸没有找到,那么可以让Perl来帮你做这件事。
    点击此处继续阅读 ^_^

  • 初品BioPerl(第五篇:序列格式的转换)

    十一月 17, 2010

    有的时候,从远程数据库里下载得到的基因序列、蛋白质序列是诸如Genbank、EMBL或SwissProt之类的复杂格式,而如果要对这些序列进行blast或clustalw之类的比对,就必须把它们转换成fasta格式的序列才行。
          序列转换,是不是要有很复杂的技巧才行呢?当然不是,其实还挺简单。我们前面已经知道如何从文件中获取序列,现在要做的,就是把获得的序列以另一种格式写入新的文件中。瞧!转换就不知不觉地完成了。
    点击此处继续阅读 ^_^

  • 初品BioPerl(第四篇:从本地文件中获取Genbank序列)

    十月 30, 2010

    这一篇哪,其实主要是复习性质的。你可以松口气,边欣赏、边回味用世界上最美的程序语言(Perl)是如何解析复杂的、神秘的生物大分子序列的。

    BioPerl比普通的Perl更简单吗?

          如果你只是解析简单的fasta序列的话,BioPerl未必很简单,甚至刚开始还比普通的Perl更加难懂呢~但是如果你准备解析一些很复杂的序列格式(或程序输出结果),比如Genbank,SwissProt,EMBL,blast……这时BioPerl威力就显现了。

    什么时候使用BioPerl?

          看一下两个例子,你就明白啦~
    点击此处继续阅读 ^_^

 

Copyright © 2010-2018 | Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org