Um guia para dbinom, pbinom, qbinom e rbinom em r
Este tutorial explica como usar a distribuição binomial em R usando as funções dbinom , pbinom , qbinom e rbinom .
dbinom
A função dbinom retorna o valor da função de densidade de probabilidade (pdf) da distribuição binomial dada alguma variável aleatória x , o número de tentativas (tamanho) e a probabilidade de sucesso em cada tentativa (prob). A sintaxe para usar dbinom é a seguinte:
dbinom(x, tamanho, probabilidade)
Em termos simples, dbinom encontra a probabilidade de obter um certo número de sucesso (x) em um certo número de tentativas (tamanho) onde a probabilidade de sucesso em cada tentativa é fixa (prob) .
Os exemplos a seguir ilustram como resolver algumas questões de probabilidade usando dbinom.
Exemplo 1: Bob acerta 60% de suas tentativas de lance livre. Se ele acertar 12 lances livres, qual é a probabilidade de acertar exatamente 10?
#find the probability of 10 successes during 12 trials where the probability of
#success on each trial is 0.6
dbinom(x=10, size=12, prob=.6)
#[1]0.06385228
A probabilidade de ele acertar exatamente 10 arremessos é 0,0639 .
Exemplo 2: Sasha joga uma moeda honesta 20 vezes. Qual é a probabilidade de a moeda sair exatamente 7 caras?
#find the probability of 7 successes during 20 trials where the probability of
#success on each trial is 0.5
dbinom(x=7, size=20, prob=.5)
#[1]0.07392883
A probabilidade de a moeda dar cara exatamente 7 vezes é 0,0739 .
pbinom
A função pbinom retorna o valor da função de densidade cumulativa (cdf) da distribuição binomial dada uma determinada variável aleatória q , o número de tentativas (tamanho) e a probabilidade de sucesso em cada tentativa (prob). A sintaxe para usar pbinom é a seguinte:
pbinom(q, tamanho, prob)
Em termos simples, pbinom retorna a área à esquerda de um determinado valor q na distribuição binomial. Se você estiver interessado na área à direita de um determinado valor q , você pode simplesmente adicionar o argumento lower.tail = FALSE
pbinom(q, tamanho, prob, lower.tail = FALSE)
Os exemplos a seguir ilustram como resolver algumas questões de probabilidade usando pbinom.
Exemplo 1: Ando joga uma moeda honesta 5 vezes. Qual é a probabilidade de a moeda dar cara mais de duas vezes?
#find the probability of more than 2 successes during 5 trials where the #probability of success on each trial is 0.5 pbinom(2, size=5, prob=.5, lower.tail=FALSE) # [1] 0.5
A probabilidade de a moeda dar cara mais de duas vezes é de 0,5 .
Exemplo 2: Digamos que Tyler acerte 30% de suas tentativas quando joga. Se ele jogar 10 vezes, qual é a probabilidade de acertar 4 rebatidas ou menos?
#find the probability of 4 or fewer successes during 10 trials where the #probability of success on each trial is 0.3 pbinom(4, size=10, prob=.3) # [1]0.8497317
A probabilidade de ele marcar 4 rebatidas ou menos é 0,8497 .
qbinom
A função qbinom retorna o valor da função de densidade cumulativa inversa (cdf) da distribuição binomial dada uma determinada variável aleatória q , o número de tentativas (tamanho) e a probabilidade de sucesso de cada tentativa (prob). A sintaxe para usar qbinom é a seguinte:
qbinom(q, tamanho, probabilidade)
Em termos simples, você pode usar qbinom para descobrir o p-ésimo quantil da distribuição binomial.
O código a seguir demonstra alguns exemplos de qbinom em ação:
#find the 10th quantile of a binomial distribution with 10 trials and prob #of success on each trial = 0.4 qbinom(.10, size=10, prob=.4) # [1] 2 #find the 40th quantile of a binomial distribution with 30 trials and prob #of success on each trial = 0.25 qbinom(.40, size=30, prob=.25) # [1] 7
rbinom
A função rbinom gera um vetor de variáveis aleatórias distribuídas binomialmente, dado um comprimento de vetor n , um número de tentativas (tamanho) e uma probabilidade de sucesso em cada tentativa (prob). A sintaxe para usar o rbinom é a seguinte:
rbinom(n, tamanho, probabilidade)
O código a seguir demonstra alguns exemplos de rnorm em ação:
#generate a vector that shows the number of successes of 10 binomial experiments with #100 trials where the probability of success on each trial is 0.3. results <- rbinom(10, size=100, prob=.3) results # [1] 31 29 28 30 35 30 27 39 30 28 #find mean number of successes in the 10 experiments (compared to expected #mean of 30) mean(results) # [1] 32.8 #generate a vector that shows the number of successes of 1000 binomial experiments #with 100 trials where the probability of success on each trial is 0.3. results <- rbinom(1000, size=100, prob=.3) #find mean number of successes in the 100 experiments (compared to expected #mean of 30) mean(results) # [1] 30.105
Observe que quanto mais variáveis aleatórias criamos, mais próximo o número médio de sucessos está do número esperado de sucessos.
Nota: “Número esperado de sucessos” = n * p onde n é o número de tentativas e p é a probabilidade de sucesso para cada tentativa.