错误描述:
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
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
from MACS2.OptValidator import opt_validate
File "/home/cns/miniconda3/lib/python3.9/site-packages/MACS2/OptValidator.py", line 20, in
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 #再次运行
解决问题



