卢锐
HiCPro安装中的iced问题
2019-6-24 12:55
阅读:6352
标签:HiCPro, iced, Hi-C比对, import iced, HiCPro bug

HiCPro是一款很好用的Hi-C数据比对软件,其安装、使用和解读,可参见我的另几篇博文:

> Hi-C数据比对软件HiCPro的安装与使用:

 http://wap.sciencenet.cn/blog-2970729-1182259.html

> HiCPro分析流程详解:

 http://wap.sciencenet.cn/blog-2970729-1185463.html

 

本以为2.11.1版本修复了非安装者不能使用icedbug。但是事实上并没有!因这个问题后来才发现的,但是《Hi-C数据比对软件HiCPro的安装与使用》这篇博文无法再修改,特别写了这篇说明。

 

其实HiCProiced问题由来已久,在HiCProGithub官网上被问了无数次,但是感觉都没有得到很好的解答(如果有最佳答案,也不会再问那么多次)。废话不多说,这里提供一种简洁的解决办法。

 

1. 这个问题的现象

直接运行/path/to/HiC-Pro_2.11.1/scripts/ice会报如下错误:

Traceback (most recent call last):

  File "/path/to/HiC-Pro_2.11.1/scripts/ice", line 8, in <module>

    import iced

ImportError: No module named iced

 

2. 出现这个问题的原因

因为HiCPro安装的时候会将iced安装到安装者的个人目录下(\$HOME目录中),其它使用者自然无法使用这个iced

另外值得一提的是iced也是HiCPro的作者写的,这里用的iced是有修改过的,在/path/to/HiC-Pro_2.11.1/scripts/src目录下有一个ice_mod的目录,其中就有iced安装包,但是直接将其添加到PYTHONPATH中,会报如下的错:

Traceback (most recent call last):

  File "../../ice", line 8, in <module>

    import iced

  File "/path/to/HiC-Pro_2.11.1/scripts/src/ice_mod/iced/__init__.py", line 1, in <module>

    from . import normalization

  File "/path/to/HiC-Pro_2.11.1/scripts/src/ice_mod/iced/normalization.py", line 3, in <module>

    from ._normalization_ import _update_normalization_csr

ImportError: No module named _normalization_

 

3. 解决办法

step1: 找出安装者的本地iced安装目录

因为是我安装的,我的iced本地安装目录在:

/home/lurui/.local/lib/python2.7/site-packages/iced/

如果大家找不到安装者,也可以直接下载我的这份压缩文件再解压,可以通用

 

iced.zip


step2: 运行以下命令找到共用的python安装目录

which python

例如,我的是/path/to/python-v2.7.9/bin/python那么将step1中的iced目录复制到

/path/to/python-v2.7.9/lib/python2.7/site-packages/

 

cp -r /home/lurui/.local/lib/python2.7/site-packages/iced/ /path/to/python-v2.7.9/lib/python2.7/site-packages/

 

再运行/path/to/HiC-Pro_2.11.1/scripts/ice,这时会出现以下提示,表示安装完成


如果没有出现,请断开连接,再重新登录集群,运行ice

 

4. 如果找不到安装者(或非管理员权限),怎么办?

当然,已经弄清楚了原因,如果我们也没有管理者权限,但无法联系到管理者,也可以将该文件拷贝到个人python site路径中,具体如下:

mkdir -p \$HOME/.local/lib/python2.7/site-packages/

 

下载我的iced压缩包,并解压

unzip iced.zip

 

再将iced目录拷贝到个人local python site

cp -p iced/ \$HOME/.local/lib/python2.7/site-packages/

转载本文请联系原作者获取授权,同时请注明本文来自卢锐科学网博客。

链接地址:https://wap.sciencenet.cn/blog-2970729-1186607.html?mobile=1

收藏

分享到:

当前推荐数:0
推荐到博客首页
网友评论1 条评论
确定删除指定的回复吗?
确定删除本博文吗?