9

How can one choose a number with a specific probability p?

Say we must choose between {0, 1} and the probability p stands for choosing 1.

So when p=0.8 we choose 1 with 80% and 0 with 20%.

Is there a simple solution in R for this?

Juergen
  • 3,489
  • 6
  • 35
  • 59

1 Answers1

17

Take a look at sample function.

> set.seed(1)
> sample(c(0,1), size=10, replace=TRUE, prob=c(0.2,0.8))
 [1] 1 1 1 0 1 0 0 1 1 1

From the helpfile you can read:

sample takes a sample of the specified size from the elements of x using either with or without replacement.

and the argument prob in sample acts as ...

A vector of probability weights for obtaining the elements of the vector being sampled.

Jilber Urbina
  • 58,147
  • 10
  • 114
  • 138