[Numpy-discussion] von mises distribution in numpy.random biased
Travis E. Oliphant
oliphant@enthought....
Sat Sep 8 23:44:36 CDT 2007
killian koepsell wrote:
> hi,
>
> the von mises distribution in numpy.random seems to be biased towards
> a higher concentration (kappa). given a concentration of 2, it
> produces data that has a concentration of 2.36. i compared the
> distribution to the one produced by the CircStats[1] package of R[2]
> using RPy [3] and created a figure here:
>
> http://redwood.berkeley.edu/kilian/vonmises.png
>
> the script i used is attached to this email. i don't know what
> algorithm NumPy uses, so i can't tell if it is a real bug or some sort
> of rounding error. the CircStats package uses the algorithm by Best
> and Fisher [4].
>
Interesting.
The algorithm in NumPy is basically the same algorithm. However, two
things are different about it and the one used in R (and in Python
itself by the way).
1) The two random variates used in the rejection algorithm are drawn
from a uniform on [-1,1]
2) The testing for the sign is done with the same random variable
instead of a new one.
I've updated the source to change both of these behaviors. I suspect
the bias is coming from 1)
Perhaps you could re-run your tests.
-Travis
More information about the Numpy-discussion
mailing list