'Error when using PEAKachu for peak calling
I am trying to use PEAKachu to call peaks for RNA eclip pair-end data. I installed PEAKachu on slurm by building from the source:
make readme_rst
make package
pip3 install --user dist/PEAKachu-0.2.0.tar.gz
Then, I used the command to run PEAKachu:
peakachu adaptive -M 200 -m 0.0 -Q 0.05 -c control.bam -t experiment.bam -o peakachu
But it returned an error after running for 1 minute:
** Converting reads to bed format for 1 libraries...
expdupsorted generated an exception: A process in the process pool was terminated abruptly while the future was running or pending.
Traceback (most recent call last):
File "/jet/home/li6/.local/bin/peakachu", line 162, in <module>
sys.exit(main())
File "/jet/home/li6/.local/bin/peakachu", line 140, in main
args.func(controller)
File "/jet/home/li6/.local/bin/peakachu", line 150, in adaptive_approach
controller.adaptive_approach()
File "/jet/home/li6/.local/lib/python3.8/site-packages/peakachulib/controller.py", line 131, in adaptive_approach
adaptive.generate_combined_bed_file()
File "/jet/home/li6/.local/lib/python3.8/site-packages/peakachulib/adaptive.py", line 84, in generate_combined_bed_file
replicon]["reads"].add(lib.replicon_dict[replicon][
KeyError: 'reads'
I am so confused because I tracked back to see what the code was doing, and the relevant part of code is:
80 for replicon in sorted(self._replicon_dict):
81 self._replicon_dict[replicon]["reads"] = pd.Series()
82 for lib_name, lib in exp_lib_dict.items():
83 self._replicon_dict[replicon]["reads"] = self._replicon_dict[
84 replicon]["reads"].add(lib.replicon_dict[replicon][
85 "reads"], fill_value=0)
As in line 81, it has created the key "reads" for _replicon_dict[replicon], how I can solve this problem? Thanks in advance.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
