For example, I want to randomly line the 0, 1 (50% respectively) 10 times. So, there should be five "0" and five "1".
But, when I used:
rbinom(10,1,0.5)
sometimes, it generates four "0" and six "1".
I noticed that the sample() function has also this issue.
There should be five "0" and five "1", and the order should be at random.
CodePudding user response:
sample will shuffle a vector randomly. So sample(rep(c(0,1),5)) is what you need.
CodePudding user response:
You need to use sample(), but this way:
b <- c(rep(0, 5), rep(1, 5))
sample(b)
# [1] 1 0 1 1 0 0 1 0 0 1
sample(b)
# [1] 0 1 1 1 0 1 0 0 0 1
sample(b)
# [1] 0 0 0 1 1 1 0 1 0 1
sample(b)
# [1] 0 1 0 0 1 0 1 1 0 1
CodePudding user response:
We can use bitwAnd sample
bitwAnd(sample(10), 1)
CodePudding user response:
A shortcut would be:
sample(10) %/% 6
#> [1] 0 0 0 1 1 0 0 1 1 1
