-
-
Notifications
You must be signed in to change notification settings - Fork 17
BUG: Fixes precision issues with stats.tukeylambda distribution
#79
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
base: main
Are you sure you want to change the base?
Conversation
|
Thanks. Based on the original report in gh-21370, please add a test to this class: Maybe name it |
Will do! Should I submit another PR in the scipy repository with this fix? I'm a little confused about how to go about this when |
|
Oh, I didn't notice this was in xsf and not SciPy. @steppi can guide you on this one. After it's merged, I think you'll want to open a PR in SciPy that updates the xsf submodule commit and adds the test. |
I've added a PR in scipy that tests this case (scipy/scipy/#24167). Right now it will fail, but after this PR it will pass. |
|
I think I need to take a closer look at this. I'm not confident at a glance that changing the value of |
|
I worked on |
Certainly this would slow down convergence. I've seen it can take ~10 more iterations to converge to a solution with the new |
I am afraid boost does not include the Tukey-Lambda distribution. |
Would allowing if (x > 1e9){
detail::tukey_EPS = 1.0e-18;
}There will certainly be a change in the cdf value about |
This fixes the bug documented in issue scipy/#21370. For$\lambda < 0$ and large $x$ , the
stats.tukeylambda.cdffunction would not return 0. By reducing the parametertukey_EPS, this can be achieved.