ay-lab / fithic

Fit-Hi-C is a tool for assigning statistical confidence estimates to chromosomal contact maps produced by genome-wide genome architecture assays such as Hi-C.
MIT License
79 stars 16 forks source link

OverflowError: cannot convert float infinity to integer #36

Open smurthy55 opened 4 years ago

smurthy55 commented 4 years ago

Hi! I hope you are doing well. I am receiving this error when I try different upper bound values while running FitHiC:

(fithic) [murthys3 FitHiC]$ fithic -f test/fragmentLists/Dixon_hESC_HindIII_hg18_w40000_chr1.gz -i test/contactCounts/Dixon_hESC_HindIII_hg18_w40000_chr1.gz -o test/tested_outputs_again -L 2 -U 1000 -p 2 -b 100 -r 40000 -x intraOnly . . . . . . . . Traceback (most recent call last): File "/home/murthys3/.local/bin/fithic", line 10, in sys.exit(main()) File "/home/murthys3/.local/lib/python3.6/site-packages/fithic/fithic.py", line 310, in main (binStats,noOfFrags, maxPossibleGenomicDist, possibleIntraInRangeCount, possibleInterAllCount, interChrProb, baselineIntraChrProb)= generate_FragPairs(binStats, fragsFile, resolution) File "/home/murthys3/.local/lib/python3.6/site-packages/fithic/fithic.py", line 654, in generate_FragPairs log.write("Range of possible genomic distances [%d %d] \n" % (minPossibleGenomicDist, maxPossibleGenomicDist)), OverflowError: cannot convert float infinity to integer

It seems like for the fragment file, there is an upper threshold set as infinity that cannot be converted to an integer. Without the upper threshold, the FitHiC program runs successfully. Do you know how I can fix this? This seems to be the case regardless of the input file I have selected.

Thanks.

ay-lab commented 4 years ago

This just means you have an "infinity" or "NaN" or NA in your file where the code is expecting an integer.

On Mon, Nov 23, 2020 at 12:10 PM smurthy55 notifications@github.com wrote:

Hi! I hope you are doing well. I am receiving this error regardless of my input file when I use an upper bound (ex. -U 120) on my data:

Traceback (most recent call last): File "/home/murthys3/.local/bin/fithic", line 10, in sys.exit(main()) File "/home/murthys3/.local/lib/python3.6/site-packages/fithic/fithic.py", line 310, in main (binStats,noOfFrags, maxPossibleGenomicDist, possibleIntraInRangeCount, possibleInterAllCount, interChrProb, baselineIntraChrProb)= generate_FragPairs(binStats, fragsFile, resolution) File "/home/murthys3/.local/lib/python3.6/site-packages/fithic/fithic.py", line 654, in generate_FragPairs log.write("Range of possible genomic distances [%d %d] \n" % (minPossibleGenomicDist, maxPossibleGenomicDist)), OverflowError: cannot convert float infinity to integer

It seems like for the fragment file, there is an upper threshold set as infinity that cannot be converted to an integer. Do you know how I can fix this?

Thanks.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/ay-lab/fithic/issues/36, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEJTNJCD4S7UV2CBQPJ7IHDSRK6T3ANCNFSM4T76JTKA .

qty9866 commented 1 year ago

I have the same question

ay-lab commented 1 year ago

as before, please check your file for non-integer entries in the fragment coordinates. If you can't pinpoint it, please share your fragments file