09/12/2015

Sorteio aleatório

Um recurso bastante interessante que o R nos permite, é fazer um sorteio randômico (aleatório) em um determinado conjunto numérico. Pode parecer um função não muito útil, mas com ela podemos simular sorteios de jogos do tipo loteria ou bingo, como farei abaixo.

Para exemplificar como funciona o sorteio, utilizarei um modelo similar a uma loteria. Temos que os números que pode ser sorteados vão de 1 a 60, então criaremos um conjunto com esses números que será chamado de a:

> a<-1:60

Em seguida basta utilizar o comando sample para sortear algum elemento que está contido no conjunto a. O argumento do comando sample também pede a quantidade de sorteios que irá fazer, no nosso caso irei realizar 6 sorteios, ou seja, irei sortear seis elementos que estão no conjunto a.

> sample(a,6)

Como resultado teremos 6 números aleatórios.

Pode ser interessante também simular um sorteio onde depois de sorteado um número ele seja recolado no conjunto para que depois seja sorteado o próximo, então basta acrescentar o argumento replace=TRUE. Na pratica, isso permitirá que o mesmo elemento possa ser sorteado outra vez.

> sample(a,6,replace=TRUE)

Caso queria repetir o sorteio varias vezes, devemos utilizar o comando replicate, que no começo deverá informar o número de replicatas serão feitas e em seguida o comando sample. No exemplo abaixo irei repetir 10 vezes.

> sorteios<-replicate(10, sample(a,6))

Para ver o resultado basta entrar com o nome dados ao conjunto de replicatas.

> sorteios

Uma forma melhor de visualizar melhor o resultado das replicatas como um todo é gerando um histograma dos sorteios mostrará a distribuição de frequências dos números sorteados.

> hist(sorteios)