I want to determine a random binary variable according to its probability. So let’s say that I have a binary variable with a probability of 70%, so I want it to become 1 with the probability of 70% and zero with a probability of 30%. How can I do it in Julia? Is there any function for that?
1 Like
If you want exactly one binary variable with 70%/30% probabilities, then you can do something like this
rand() < 0.7 ? 1 : 0
In more general scenario, you can use Distributions package
d = Categorical([0.3, 0.7])
rand(d, 100) .- 1
-1
because Categorical
distributions produces 1, 2, 3, 4...
3 Likes
Many thanks!
The more succinct way to do this would be to use the Bernoulli
distribution:
using Distributions
dist = Bernoulli(0.7)
rand(dist)
2 Likes
That’s very concise! Thanks!
1 Like