配置SJARANe安装环境
conda create -n py36 python=3.6.1 (交大镜像有)
source activate py36
conda install numpy==1.14.2
conda install scipy==1.0.1
conda install XlsxWriter==1.0.2
conda install pandas==0.22.0
pip install argparse==1.1
anaconda官网下载python-igraph==0.7.1.post7.tar.gz, 然后conda install --use-local XXX.python-igraph.0.7.1.post7.tar.gz
安装SJARCNe
github下载SJARCNe 1.0.0版本,解压
py36下python setup.py install
即可
运行SJARCNe
安装完成后,py36下输入
sjaracne TF input.exp tf.txt ./tf_out
sjaracne SIG input.exp sig.txt ./sig_out
注意:
- 该脚本是后台运行的,执行上述代码后,会出现[INFO] --> [ARCN]和[MICA] finishd,然后跳到命令执行完毕的样子,此时不要理他,让他自己跑,是在后台运行的;
- 如果出现get_consensus_network.py和get_enhanced_consensus_netwoek.py permission denied的报错信息,是由于这两个.py文件执行权限不够造成的,需要先提高他们的权限:搜索 SJARACNE, 找到 XXX.egg/SJARACNE 路径 (ubuntu下为/Home/miniconda3/envs/py36/lib/python3.6/site-packages/SJARACNE-0.1.0-py3.6.egg/SJARACNe),进入该文件夹,执行命令
chmod 777 get_consensus_network.py
和chmod 777 get_enhanced_consensus_network.py
即可(777是最高执行权限) - 此时还是会报错,import igraph时出现libicui18.so.58找不到这个文件,解决方法:
-
conda uninstall igraph
#先卸载之前安装的igraph - conda_forge官网上下载linux对应的icu-58包,然后
conda install --use-local icu-58.2-hf484d3e_1000.tar.bz2
(此时会安装icu-58版本) -
source activate py36
conda install python-igraph==0.7.1.post7
(此时已添加conda-forge源,否则搜索不到这个版本的包)(该步骤会直接下载icu-68)
此时import igraph,仍会报错无XXX.so.58文件,需要下面步骤予以处理 - 将/home/kgzaker/miniconda3/pkgs/icu-58.2-hf484d3e_1000/lib下的 libicudata.so.58.2, libicui18n.so.58.2, libicuuc.so.58.2文件复制到/home/kgzaker/miniconda3/envs/py36/lib内,再建立软链接
cd /home/kgzaker/miniconda3/envs/py36/lib
ln libicudata.so.58.2 libicudata.so.58
ln libicui18n.so.58.2 libicui18n.so.58
ln libicuuc.so.58.2 libicuuc.so.58
备注:在/home/kgzaker/miniconda3/pkgs/icu-58.2-hf484d3e_1000/lib文件夹内,ls -al 可以看到该文件夹内的libiXXX.so.58文件全部是本文件夹内libiXXX.so.58.2文件的软链接
- 此时就可以import igraph了
最后 NetBID2 需要的是 out.final 文件夹下的 consensus_network_ncol_.txt 文件,将其放入指定的文件夹内即可