-
Notifications
You must be signed in to change notification settings - Fork 89
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
CI for FisherExactTest is extremely slow for large numbers #148
Comments
I have also experienced this - I noticed that when I run your example with the time macro:
I get the following result: So the time macro prints the elapsed time after two seconds but there is no result from the |
That's probably because the p-value and confidence intervals are only computing when printing the object. |
Same here, cannot get correct P values for Fisher's Exact Test when args are too large.
While I can get the correct answer using a C++ version of Fisher's Exact Test:
where the left is the absolute time it consumes, and the right is the P value. I guess the reason is that the implementation of Julia is different from that of the one which is applied in bedtools? Digged deeper into the Julia implementation, found that the root finding might be the cause? |
BTW the general performance issues should have been fixed by JuliaStats/Distributions.jl#1277. |
When trying to calculate a confidence interval for FisherExactTest with large numbers, e.g.
confint(FisherExactTest(2216,9338, 3172,1335))
, Julia gets stuck at 100% CPU for 10-15 minutes. As a comparison, in Rfisher.test(matrix(c(2216, 9338, 3712, 1335), ncol=2, byrow=TRUE))
returns instantly and shows a confidence interval.confint(FisherExactTest(226,938, 312,135))
is also slow and crashes with(perhaps related to #122 ?)
The text was updated successfully, but these errors were encountered: