Linux系统中NCBI BLAST+本地化教程

bioinf

本文提供在Linux系统中进行NCBI BLAST+本地化的方法。实测环境为Linux64位系统,无ROOT权限。

本文面向初学者(最好还是懂得基本的linux使用),高手可直接忽视。不介绍Windows系统中的安装方法,一是因为思路一样,二是因为Linux中BLAST效率更高,系统更稳定,不会卡死。所以,请用Linux服务器,我想你也不忍心让自己心爱的本本跑几十个小时的程序吧。

请不要因为篇幅长,而觉得很困难,只是为了初学者能懂,叙述比较详(luo)细(suo)而已

——————-[ 做好心理准备,开始了]——————- 

1. 安装配置BLAST+程序

ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/中下载最新的BLAST可执行程序(不要下载源代码`,源码编译非常慢),选择预编译版本,如ncbi-blast-2.2.30+-x64-linux.tar.gz。如果服务器能联网,可直接用wget下载。或者,下载后用SFTP客户端传输到服务器上。

wget ftp://ftp.ncbi.nlm.nih.gov/blast/executables/blast+/LATEST/ncbi-blast-2.2.30+-x64-linux.tar.gz

解压缩:

tar -zxvf ncbi-blast-2.2.30+-x64-linux.tar.gz

(按理说解压缩后就可以通过绝对路径直接使用了,但为了今后的方便,还是继续配置吧)为了方便,将其移动到我安装本地程序的目录(参考《[Linux上设置良好的目录结构][1]》),并重命名(固定命名,不带版本号,避免因升级而修改配置文件),统一管理。

mv ncbi-blast-2.2.30+ ~/local/app/ # 移动
cd ~/local/app/                    # 进入本地程序安装路径
mv ncbi-blast-2.2.30+ blast        # 修改目录名

现在,已经将BLAST+安装到~/local/app/blast 中了(~知道吧,就是用户的家目录,可用环境变量$HOME代替)。

Read more →

Fasta Splitter

bioinf

Avoid reinventing the wheels. [Recommended] FASTA Splitter – A perl script that divides a large FASTA file into a set of smaller equally sized files. Written by Kirill Kryukov. split_fasta from nash-bioinformatics-codelets How to split a Multiple fasta on Biostar

Read more →

高效计算科学研究的十条简单规则

sci devop

PLOS Computational Biology上发表了《Ten Simple Rules for Effective Computational Research》,可以看成是《Ten Simple Rules for Reproducible Computational Research》可复现的计算科学研究十条简单规则,以及自己的一些经验)的姊妹篇,本文结合我自己的经验对其阐述。

  1. Look Before You Leap

    动手前先看看有没有现成的软件或库,避免重复发明轮子

    多Google,在代码仓储网站(Github,SourceForge,GoogleCode)上面多搜搜。

  2. Develop a Prototype First

    先建立原型。

    先设想好软件要实现什么功能,提供什么接口,并将问题进行细化,这样开展起来才能思路清晰,也方便团队分工。另外,也可以先用伪代码,或者高级语言(Matlab、R、Python、Perl等)快速开发一个简化版的原型,随后再用“低级语言”进行优化。

    Read more →

Extract cds fastas from a gff annotation + reference sequence

bioinf

Avoid reinventing the wheels. 2015-07 But I still have one: gff2fa.py GFF-Ex, a Genome Feature extraction package extracts Gene, Exon, Intron, Upstream Region of Gene (Promoters), Intergenic and CDS/cDNA sequences by just tweeting in the Genome Feature File (gff) along with the corresponding genome/chromosome sequence. Question: Extract cds fastas from a gff annotation + reference sequence from biostars.org [bioperl needed]

Read more →

正则表达式匹配前,用quotemeta函数对字符串中的非单词字符进行转义

devop perl

当需要用正则表达式判断一个字符串是否含有一个子串时,如果该子串含有一些非world字符(ASCII non-word characters,即除去[A-Za-z_0-9] 之外的字符),特别是一些在正则表达式中有特别意义的符号\ | ( ) [ ] { } ^ $ * + ? . 时,会导致匹配失败。

那么需要对要匹配的子串进行转义,既可以在正则表达式中用\Q\E,也可以在匹配前用quotemeta函数处理。

Perl中有内置的quotemeta函数,Golang中标准库regexp有QuoteMeta函数。

一个Perl的示例:

Read more →

正则表达式匹配汉字

devop perl

本文介绍如何在Perl中用正则表达式匹配汉字。

这是根据@灰灰 的建议的最新一次修改版本(2014-04-22)。

注:下列代码保存于UTF8编码的文本文件中,且命令行终端为UTF8编码。

Read more →

重庆驾照科目三复盛电子路考考试经验

life

本文介绍自己的重庆驾照科目三复盛电子路考考试经验,相信对大家非常有用。

考试项目

具体的可以google或者百度其它网站的说明。具体流程为:上车后首先进行模拟夜间灯光操作,起步;后续包括必考的通过路口、学校、公交车站,直线行驶、变道、靠边停车;可能要考的而是掉头。一般每个人行驶2-3公里。考试车型为90辆长安逸动和10量新桑塔纳(几乎抽不到,据说都是给关系户用的)。大多指令由电脑发出,变道和停车由安全员发出。考试总分100分,90分及格。

考试地点与线路

考试地点是重庆江北区复盛镇,具体请google。考场规划有三条线路,目前(2014年2月11日)只开通了1、2号线,今天考试的时候,似乎只考了一号线。

考试要领

Read more →

Golang Note

golang note

这个笔记不系统,只是记录我个人认为的一些有意义的技巧,防止忘记,故记录于此。

last update 2014-10-06

代码风格

Read more →

用任务分发系统Gearman来加速你的计算任务

devop linux

前面一篇中讲到利用多线程编程来充分利用多核来加速任务处理,Gearman则可以利用多台机器的多核。

Gearman 是一个任务分发系统,它提供了一个分发框架,能够分发某类任务到更适合处理这类任务的服务器上去处理。并且,它支持任务并行处理、负载均衡以及多语言调用。它的适用范围很广,从高可用性的网站到透明的数据库复制等。换句话说,它是一个强健的分布式通信处理系统。

据我有限的实践得到的一些经验:

  • Gearman主要适用于相对独立、计算密集的任务。
  • 基于其多语言支持的优势,worker和client可以分别使用最合适的语言编写。
  • 最好用于共享存储系统的HPC,方便管理worker。
  • 最好写管理软件自动部署server和workers。
  • Server和worker间的通信所消耗的时间需要考虑到。
  • 需要通过测试寻找最佳的server和workers数量比例,通常很少量的server就够了。
  • 通信内容我用的是json字符串,方便解析。
  • 如果server和worker都在本地,则实质为多进程编程,所以非常容易扩展。

Read more →

用Linux Live CD拯救无法启动的电脑中的数据,以及安装系统总结

windows linux office

如果电脑无法进入操作系统(Windows, Linux,Mac OS X均适用),可以用Linux Live CD拯救硬盘中珍贵的数据。

为什么要用Linux的Live CD呢,因为Linux系统能够兼容更多的磁盘格式,而windows系统盘里的Win PE只认fat, ntfs等;而Mac OS X的系统盘似乎没有Live功能。我常用的Linux Live CD是fedora,ubuntu。

虽然可以制作USB启动盘,但我试过多次,在很多笔记本、服务器上都有问题。最方便、稳定的还是刻CD/DVD,兼容性更强。如果有的笔记本没有DVD驱动,可以用移动光驱。

Read more →