We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
julia> rand(Poisson(1e20)) ERROR: InexactError: Int64(Int64, 9.999999997262139e19) Stacktrace: [1] Type at ./float.jl:700 [inlined] [2] convert at ./number.jl:7 [inlined] [3] rand(::Poisson{Float64}) at /Users/simon/.julia/packages/Distributions/WHjOk/src/univariate/discrete/poisson.jl:89 [4] top-level scope at none:0
Note that the underlying Rmath library actually works in terms of Float64s (see JuliaStats/Rmath-julia#11).
The text was updated successfully, but these errors were encountered:
I think it only fails if the return value is actually outside the range of Int:
Int
julia> rand(Poisson(float(typemax(Int64)))) 9223372034018728960 julia> rand(Poisson(float(typemax(Int64)))) 9223372033786713088 julia> rand(Poisson(float(typemax(Int64)))) ERROR: InexactError: Int64(Int64, 9.223372040475427e18)
Sorry, something went wrong.
PS: Someday somewhere in some parallel universe a rand(Poisson(1.0)) will fail with overflow.
rand(Poisson(1.0))
I guess it would be useful to have a rand(::Type{Float64}, d::Poisson) method that didn't do the conversion to Int.
rand(::Type{Float64}, d::Poisson)
It would be nice if this could return a better error message.
eltype
rand
No branches or pull requests
Note that the underlying Rmath library actually works in terms of Float64s (see JuliaStats/Rmath-julia#11).
The text was updated successfully, but these errors were encountered: