Comments (11)
Hi Jorge,
Unfortunately I am unable to replicate your problem when running the same command on two separate datasets.
Note that using --min-dist and --max-dist will restrict the loop size, but this is only meaning full for intra-chromosomal matrices. Loop pattern will still be scanned on the entire inter-chromosomal matrices.
What is your version of pandas ? It works with v1.1.3, but I could issue a fix to make it compatible with other versions, if that's the problem.
Cyril
from chromosight.
Hello Cyril,
I have matched my pandas to be 1.1.3 as yours and rerun chromosight 1.4.1. I'll let you know what happens.
Many thanks
Jorge
from chromosight.
Hello Cyril,
I rerun with pandas 1.1.3 but still got the same error. I'll try with chromosight 1.4.0 instead.
Thanks
Jorge
from chromosight.
OK then, since I cannot reproduce the error, I'll close it for now. Don't hesitate to reopen if you encounter this error on a different dataset. If so, it would be nice to see your python environment to find out what package is causing the issue.
Best,
Cyril
from chromosight.
Hello Cyril,
I have gotten the same error. I ran chromosight on a matrix enhanced with DeepHiC and the original. The matrix that was enhanced did work, and the original failed. Is it likely that the original matrix is just too sparse to identify any loops?
Kind regards,
Callum
from chromosight.
Hi @cmacphillamy,
Do you get the exact same error ?
I have tried running chromosight detect
on an empty matrix, but this just returns "No patterns detected" as expected, so I do not think it has to do with sparsity.
I don't really know what the issue could be, but if you were comfortable with sharing the original cool file, I could investigate a bit.
Best,
Cyril
from chromosight.
Hello! @cmdoret
I got the same problem. It disappears when I use --pearson==0.1, but appears when I set this parameter from 0.2 to 0.9.
If --pearson is 1 or higher, the chromosight said "No patterns detected", as you said.
UPD:
I revealed that pearson between 0.1 and 0.2 works good. But from 0.2 and 0.9 it raises error
UPD2:
The change of resolution allowed to increase the pearson parameter, but I still get the error when it is equal to 0.5, for example.
from chromosight.
Hi @GeorgyChistov, since I cannot reproduce the issue on my end, would it be possible for you to share the dataset on which it happens ? It is hard to figure out the cause if I can't reproduce the error.
from chromosight.
@cmdoret of course, here is command
chromosight detect 30C_15min.mcool::/resolutions/3200 CIDs_30C_15min_res3200 --pattern borders --win-fmt=npy [--pearson=0.199
I am sorry, I cannot attach the data. Here is link to it
https://www.ncbi.nlm.nih.gov/geo/query/acc.cgi?acc=GSM4585137
Additionally, I have another question to you, as to the developer. How chromosight specify the size of its scanning window? For example, we have borders on the diagonal with size 3x3 bins and borders with size 20x20. Will the chromosight find both them? So does it somehow enumerate the size of scanning window?
from chromosight.
Hi @GeorgyChistov I downloaded the data and ran the command, but could not reproduce your error.
It may have something to do with a particular version of numpy / pandas on your machine.
Since Chromosight is distributed on bioconda, a docker container is built automatically by biocontainers for each of its release. To isolate it from your system libraries, you can run chromosight from the container if you have docker installed:
docker run -v "$PWD:/data" quay.io/biocontainers/chromosight:1.6.1--pyhdfd78af_0 chromosight detect \
/data/GSM4585137_30C_15min.mcool::/resolutions/3200 \
/data/CIDs_30C_15min_res3200 \
--pattern borders \
--win-fmt=npy \
--pearson=0.199
As for your question: The windows size is fixed to a default value (you can change it with --win-size
) which we found worked pretty well for most of our use cases. Generally speaking, Chromosight should find borders larger than the windows without problem, but may miss borders smaller than the window. If you want to detect very small borders, reducing it will probably increase sensitivity, however this will also cause many false positives.
from chromosight.
I figured out the problem @jazberna1 @GeorgyChistov this was indeed due to a newer version of pandas.
Briefly, using np.isnan
on a pandas series with dtype object now returns an error, wheres it worked before.
I fixed it in 063ba46 and released 1.6.2. Now Chromosight works with newer versions of pandas and is compatible with python 3.10.
from chromosight.
Related Issues (20)
- How to compare loops of Hi-C from different conditions like DEG in RNA-Seq? HOT 4
- Questions about resolution in loop json file HOT 2
- Chromosight for single-cell Hi-C HOT 8
- Point and click mode HOT 8
- Different number of patterns for the same Hi-C matrix HOT 3
- How to evaluate the detected loops? HOT 4
- Different number of loops on GM12878 Hi-C map HOT 2
- chromosight detects hairpin, the numer is too large HOT 1
- Can chromosight detect loops based on restriction fragments level (1f, 2f, etc) HI-C matrix. HOT 2
- Bus error in chromosight quantify HOT 2
- How does Chromosight compute the Pearson correlation ? HOT 2
- Is there a way to use multiresolution .mcool files directly? HOT 1
- Where do these kernels come from? HOT 5
- Loop score calculation HOT 4
- Pattern = TAD? HOT 1
- Recommend parameters of borders detect HOT 1
- Tuning the parameters (perc-zero, perc-undetected, pearson) for a relatively small dataset HOT 2
- HicMatrix generated cool file not supported - possible solution HOT 6
- Handle variable bin size
- plots appear blurry
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from chromosight.