Overview

DISOPRED是一个蛋白质内部非结构区域的预测软件,使用DISOPRED,我们可以很方便地得到一个蛋白质序列的非结构区域信息,能够为蛋白质特征分析提供更多的信息。

1.DISOPRED的下载

http://bioinfadmin.cs.ucl.ac.uk/downloads/DISOPRED/这里就可以下载各个版本的DISOPRED,这里我们下载最新版本的DISOPRED3.16.tar.gz

2.DISOPRED的安装

因为DISOPRED也是以源码包的形式提供下载,因此也需要下载之后自己编译。先将下载好的 解压解压之后的文件夹为DISOPRED,进入DISOPRED目录,按照README文件的步骤安装。

2.1 常规的安装步骤

进入DISOPRED目录,使用下面的三行命令安装:

make clean
make
make install

如果是linux的话通常就可以正常使用了。

2.2 MAC下的不兼容

如果是MAC系统,会有两个地方需要修改。

  1. 在执行make这一步的时候会报以下错误:

    disord_pred.c:246:43: error: use of undeclared identifier 'CLKRATE'
    runtime += (double) abs(temp - last_t) / CLKRATE;
                                             ^
    disord_pred.c:248:59: error: use of undeclared identifier 'CLKRATE'
    runtime += (double) (0x7fffffff - last_t + (temp + 1)) / CLKRATE;
    

    查看disord_pred.c,我们发现下面的几行代码:

    #ifdef unix
    #define CLKRATE 1000000
    #endif
    

    这个宏在unix系统下才定义了CLKRATE变量,因此在MAC下编译时就会报CLKRATE未声明的错误,我们在disord_pred.c中上面这几句代码后面添加如下代码:

    #ifdef __MACH__
    #define CLKRATE 1000000
    #endif
    

    这样在MAC系统下一样会执行#define语句,重新执行make命令,这次就可以顺利通过了。

  2. 在执行make install的时候会报以下错误:

    mv -t ../bin disopred2 diso_neu_net diso_neighb combine svm-predict
    mv: illegal option -- t
    usage: mv [-f | -i | -n] [-v] source target
           mv [-f | -i | -n] [-v] source ... directory
    make: *** [install] Error 64
    

    查看Makefile文件,发现下面的代码:

    install:
        mkdir ../bin/
        mv -t ../bin disopred2 diso_neu_net diso_neighb combine svm-predict
    

    可以看出来,make install步骤就是在DISOPRED目录下建立一个bin文件夹,并将make步骤中生成的可执行程序都复制到bin文件夹下,只是在使用mv命令时用了-t参数,MAC下不支持这个参数,所以我们用下面的mv命令替换上面的mv -t命令,修改后如下:

    install:
        mkdir ../bin/
        mv disopred2 diso_neu_net diso_neighb combine svm-predict ../bin/
    

    注意,修改完之后,需要重新执行make cleanmake步骤,再执行make install就可以了。

3.DISOPRED的配置

安装成功之后,我们就可以通过DISOPRED目录下的run_disopred.pl脚本使用DISOPRED程序了。
但在使用之前,我们还需要配置一下run_disopred.pl脚本,打开这个脚本,找到下面的代码:

## IMPORTANT: Set the paths to folder with the NCBI executables and to the
## sequence database
my $NCBI_DIR = "/home/bin/blast-2.2.26/bin/";
my $SEQ_DB = "/home/uniref/uniref90";

在有了SCRATCHPSIPRED的使用经验之后,我们很容易就知道这两行代码的意思,那就是设置DISOPRED调用BLAST程序的路径以及配置BLAST程序所要用到的数据库。
因为我们已经将BLAST程序加入了$PATH路径,所以在使用时我们不再需要指定绝对路径,因此我们通过下面的代码修改这两个变量,如下所示:

## IMPORTANT: Set the paths to folder with the NCBI executables and to the
## sequence database
my $NCBI_DIR = "";
my $SEQ_DB = "/Users/wangjiawei/Bioinformatics/Data/blast/uniref50";

其中/Users/wangjiawei/Bioinformatics/Data/blast/uniref50为我们为BLAST配置的数据库的地址。

4.DISOPRED的使用

现在我们就可以通过run_disopred.pl脚本使用DISOPRED程序了。在examples文件夹中,也提供了example.fastasmall_example.fasta供测试使用。使用下面的命令运行DISOPRED程序:

./run_disopred.pl examples/example.fasta

产生如下输出结果:

Running PSI-BLAST search ...

Generating PSSM ...

Predicting disorder with DISOPRED2 ...

Running neural network classifier ...

Running nearest neighbour classifier ...

Combining disordered residue predictions ...

Predicting protein binding residues within disordered regions ...

Cleaning up ...

Finished

Disordered residue predictions in /Users/wangjiawei/Bioinformatics/Softwares/DISOPRED/examples/example.diso

Protein binding disordered residue predictions in /Users/wangjiawei/Bioinformatics/Softwares/DISOPRED/examples/example.pbdat

多数时间还是花在Running PSI-BLAST search ...这一步,以及Running nearest neighbour classifier ...