Perl, CPAN and crispr tools
希望大家在忙碌中都能有所思考,有所收获,最关键的是,心情要好。
发现生物信息学上很多软件似乎还是用Perl
写的,此外当然还有C/C++
。试图成为生信算法工程师从入门到放弃.jpg
Perl像C一样强大,像awk、sed等脚本描述语言一样方便,被Perl语言爱好者称之为“一种拥有各种语言功能的梦幻脚本语言”、“Unix中的王牌工具”。
仿佛有被吓到.jpg 其实没有害
然后Perl
有一个很厉害的开源社区叫CPAN
(Comprehensive Perl Archive Network ),没错R语言人民熟知的CRAN就是模仿其命名的,里面有非常多Perl
语言编写的软件模块。
有两个寻找CRISPR序列的工具就是用Perl写的。目前我使用的服务器转到了集群,这意味着虽然作为一个使用者账户,权限上有了更多的限制,然而计算资源+++。我之前写的循环被老师认作粗暴,他认为我应该同时作业,确实,SBATCH
努力学习中。下面介绍两个找crispr的工具,就目前来讲,寻找crispr还是有很多困难,直接用工具寻找容易遗漏,如何提高其敏感度有待探索。
当拿到新开的账号,就可以直接local装好miniconda或者anaconda了,不多说。
Tool1: CRISPRDetect
装好它的第三方依赖(3rd party dependency)
The only CPAN perl package ‘Parallel’ is provided in the ‘lib’ folder and should work. If not, then
1 | cpan Parallel::ForkManager |
然后是下面几个包
1 | clustalw Download from ftp://ftp.ebi.ac.uk/pub/software/clustalw2/2.1/ |
clustalw
是一个做alignment的工具,一般有sudo
权限的话,只需要这样
1 | sudo apt-get update -y |
但是显然我并没有这个权限,the incident has been reported。。。
于是按照给的网站,找到Linux安装包的链接,然后直接下载下来吧。
1 | wget ftp://ftp.ebi.ac.uk/pub/software/clustalw2/2.1/clustalw-2.1-linux-x86_64-libcppstatic.tar.gz ./ |
这里mark一下aspera
:Aspera - High-speed file transfer software.
注意一下这里面是clustalw2,我们需要clustalw
命令可执行,所以改个名。然后加一下路径,添加到~/.bashrc
的末尾。
1 | export PATH=$PATH:/my/new/path |
Tips: vi
编辑的时候dd
可以删除整行,
后面几个用conda install
对应的package就好了,为了避免未来的base
环境被自己折腾得一塌糊涂,建议conda create
一个环境。
然后把github上的仓库clone到自己的目录下,就可以运行了。中间有一些细节,略。https://github.com/ambarishbiswas/CRISPRDetect_2.2
1 | tod="/public/home/huangsisi/bin/CRISPRDetect_2.4/" |
Tool2: casc
而casc
似乎是已经在CPAN上的一个module.
https://github.com/dnasko/CASC
安装十分方便
1 | git clone https://github.com/dnasko/CASC.git |
1 | perl Makefile.PL |
注意有可能会发生的报错,
1 | Only one of PREFIX or INSTALL_BASE can be given. Not both. |
这大概是因为per安装在local-lib( which uses the INSTALL_BASE paradigm)的缘故,那就不要再给PREFIX赋新的目录了。
如果已经进行了赋值的话,在cpan
shell里面,修改一下,不要specify PREFIX
1 | o conf makepl_arg '' |
并且
1 | o conf make_arg '' |
Anyway,顺利的话已经安装好了casc
,那么同样试一下。其中-n 1
是用1块cpu的意思。
1 | casc -i H39_03.fasta -o ./ -n 1 |
比较一下两个工具的结果还是有点意思……略