错误描述:
macs2 callpeak -c SRR620208.bam -t SRR620204.bam -q 0.05 -f BAM -g mm -n SRR620204VS8
bam文件已经跑好,下一步就要call peaks了,使用macs v2.2.7.1 出现错误:
Traceback (most recent call last): ? File "/home/cns/miniconda3/bin/macs2", line 653, in <module> ? ? main() ? File "/home/cns/miniconda3/bin/macs2", line 49, in main ? ? from MACS2.callpeak_cmd import run ? File "/home/cns/miniconda3/lib/python3.9/site-packages/MACS2/callpeak_cmd.py", line 23, in <module> ? ? from MACS2.OptValidator import opt_validate ? File "/home/cns/miniconda3/lib/python3.9/site-packages/MACS2/OptValidator.py", line 20, in <module> ? ? from MACS2.IO.Parser import BEDParser, ELANDResultParser, ELANDMultiParser, \ ? File "__init__.pxd", line 242, in init MACS2.IO.Parser ValueError: numpy.ndarray size changed, may indicate binary incompatibility. Expected 96 from C header, got 88 from PyObject 经过查询了解到:macs2需要numpy合适的环境下运行,而我还没有安装numpy。
解决方法:
因担心对base环境的干扰,因此创建一个合适的虚拟环境,在该环境下完成macs2相关环境的配置:
经过查询版本需求,发现:macs v2.2.7.1 需要依赖python3.9版本,因此先创建一个python3.9的虚拟环境
conda create -n MACS python=3.9
conda activate MACS #激活所需环境
conda install -c anaconda numpy #安装numpy
conda install -c bioconda macs2 #安装macs2
macs2 callpeak -c SRR620208.bam -t SRR620204.bam -q 0.05 -f BAM -g mm -n SRR620204VS8 #再次运行
解决问题?
|