XiaoTaoWang / EagleC

A deep-learning framework for predicting a full range of structural variations from bulk and single-cell contact maps
Other
52 stars 8 forks source link

an error with 'weight' #5

Open distilledchild opened 2 years ago

distilledchild commented 2 years ago

Hi @XiaoTaoWang , Thank you for the tool to identify SVs using hic data. I used Hi-C data of rats using HiC-Pro, and I was able to get three different resolution, 5K, 10K and 50K with cool format. The command I used is like this below.

predictSV --hic-5k $INPUT_LOCATION/5000/69D_hicpro_0insert600_resolution_5000 \ --hic-10k $INPUT_LOCATION/10000/69D_hicpro_0insert600_resolution_10000 \ --hic-50k $INPUT_LOCATION/50000/69D_hicpro_0insert600_resolution_50000 \ -O 69D_eagleC_hicpro \ -g other \ --balance-type ICE \ --output-format full \ --prob-cutoff-5k 0.8 \ --prob-cutoff-10k 0.8 \ --prob-cutoff-50k 0.99999

When I used "CNV" for the option of balance-type, I got an error related to sweight. Based on the previous issue, I changed the value into "ICE" from "CNV", and I got an error with weight. I added the error log below and could you take a look at it please? Thank you.


Traceback (most recent call last): File "/eaglec/lib/python3.8/site-packages/pandas/core/indexes/base.py", line 3621, in get_loc return self._engine.get_loc(casted_key) File "pandas/_libs/index.pyx", line 136, in pandas._libs.index.IndexEngine.get_loc File "pandas/_libs/index.pyx", line 163, in pandas._libs.index.IndexEngine.get_loc File "pandas/_libs/hashtable_class_helper.pxi", line 5198, in pandas._libs.hashtable.PyObjectHashTable.get_item File "pandas/_libs/hashtable_class_helper.pxi", line 5206, in pandas._libs.hashtable.PyObjectHashTable.get_item KeyError: 'weight'

The above exception was the direct cause of the following exception:

Traceback (most recent call last): File "/eaglec/bin/predictSV-single-resolution", line 276, in run() File "/eaglec/bin/predictSV-single-resolution", line 227, in run intra_expected_count = intraPredict(clr, cnn_models, chroms, cache_folder, seq_depth, File "eaglec/scoreUtils.pyx", line 1263, in eaglec.scoreUtils.intraPredict File "eaglec/scoreUtils.pyx", line 861, in eaglec.scoreUtils._intra_global_core File "/eaglec/lib/python3.8/site-packages/pandas/core/frame.py", line 3505, in getitem indexer = self.columns.get_loc(key) File "/eaglec/lib/python3.8/site-packages/pandas/core/indexes/base.py", line 3623, in get_loc raise KeyError(key) from err KeyError: 'weight' Traceback (most recent call last): File "/eaglec/bin/predictSV", line 176, in run() File "/eaglec/bin/predictSV", line 112, in run subprocess.check_call(' '.join(command), shell=True) File "/eaglec/lib/python3.8/subprocess.py", line 364, in check_call raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command 'predictSV-single-resolution -H /resolution_5000 --balance-type ICE -O eagleC_hicpro.CNN_SVs.5K.txt --genome other --output-format full -C "#" "X"

XiaoTaoWang commented 2 years ago

Just run "cooler balance" on your cool files at 5kb, 10kb, and 50kb before you run "predictSV"

yangfeizZZ commented 2 years ago

When i run "cooler balance" on my mcool file,the same error was occurred.How to sovle it.

yangfeizZZ commented 2 years ago

Just run "cooler balance" on your cool files at 5kb, 10kb, and 50kb before you run "predictSV"

yfarjoun commented 1 year ago

you have to run balance on each resolution, did you do that?

I did something like this:

cooler ls  MCF7_25M_inter_30.mcool | xargs -n1 cooler balance --max-iters 1000 --force  --tol 0.01