bedtools的一个报错(Received|bedtools的一个报错:Received illegal bin number xxxxx from getBin call)
$ bedtools intersect -a SRR369xxxx.bed -b HC_gene.bed -wa
ERROR: Received illegal bin number 37458 from getBin call.
ERROR: Unable to add record to tree.
在Biostars上找到了原因——https://www.biostars.org/p/129072/
原来是坐标数值太大(也可以说是基因组size太大),超过了536,870,912 = 2**29,差不多是512Mb。至于为什么是512Mb,这个问题太底层了(跟建立索引 / index有关),我暂时还不清楚。此外,我之前在做一些比对的时候,也碰到过参考基因组的染色体超过了512Mb时,会拆成两段chr_parts的情况,否则以sam/bam为out.file的比对软件都不可用。
解决的方法我知道的有两个,一是降低bedtools的版本(如2.17.0),另一个是换软件(如BEDOPS)。
【bedtools的一个报错(Received|bedtools的一个报错:Received illegal bin number xxxxx from getBin call)】前面那个bedtools的版本是
$ bedtools --version
bedtools v2.27.1-9-g5f83cac$ which bedtools
~/mysoft/bedtools2/bin/bedtools
现在用conda装一个低版本的
~/miniconda3/bin/conda install bedtools=2.17.0
# =2.17.0指定安装版本$ ~/miniconda3/bin/bedtools --version
bedtools v2.17.0
这回没有报错了
$ ~/miniconda3/bin/bedtools intersect -a SRR119xxxx.bed -b HC_gene.bed -wa
chr4A702339777702340323
chr7A2911034229111558
另一种解决办法是换用BEDOPS,这是一款和bedtools很相似的软件,也可以用来处理基因组特征文件。
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量