Una guida a dbinom, pbinom, qbinom e rbinom in r


Questo tutorial spiega come utilizzare la distribuzione binomiale in R utilizzando le funzioni dbinom , pbinom , qbinom e rbinom .

dbinom

La funzione dbinom restituisce il valore della funzione di densità di probabilità (pdf) della distribuzione binomiale data una variabile casuale x , il numero di prove (dimensione) e la probabilità di successo di ciascuna prova (prob). La sintassi per utilizzare dbinom è la seguente:

dbinom(x, dimensione, prob)

In termini semplici, dbinom trova la probabilità di ottenere un certo numero di   successo (x) in un certo numero di prove (dimensione) dove la probabilità di successo in ciascuna prova è fissa (prob) .

I seguenti esempi illustrano come risolvere alcune domande di probabilità utilizzando dbinom.

Esempio 1: Bob effettua il 60% dei suoi tiri liberi. Se effettua 12 tiri liberi, qual è la probabilità che ne effettui esattamente 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

La probabilità che effettui esattamente 10 tiri è 0,0639 .

Esempio 2: Sasha lancia una moneta equilibrata 20 volte. Qual è la probabilità che la moneta dia esattamente 7 teste?

 #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

La probabilità che la moneta esca testa esattamente 7 volte è 0,0739 .

pbinom

La funzione pbinom restituisce il valore della funzione di densità cumulativa (cdf) della distribuzione binomiale data una certa variabile casuale q , il numero di prove (dimensione) e la probabilità di successo di ciascuna prova (prob). La sintassi per utilizzare pbinom è la seguente:

pbinom(q, dimensione, prob)

In termini semplici, pbinom restituisce l’area a sinistra di un dato valore q   nella distribuzione binomiale. Se sei interessato all’area a destra di un dato valore q , puoi semplicemente aggiungere l’argomento lower.tail = FALSE

pbinom(q, dimensione, prob, lower.tail = FALSE)

Gli esempi seguenti illustrano come risolvere alcune domande sulla probabilità utilizzando pbinom.

Esempio 1: Ando lancia una moneta equilibrata 5 volte. Qual è la probabilità che esca testa più di due volte?

 #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

La probabilità che esca testa più di due volte è 0,5 .

Esempio 2: Supponiamo che Tyler ottenga uno strike nel 30% dei suoi tentativi quando gioca. Se gioca 10 volte, qual è la probabilità che ottenga 4 strike o meno?

 #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

La probabilità che segni 4 strike o meno è 0,8497 .

qbinom

La funzione qbinom restituisce il valore della funzione di densità cumulativa inversa (cdf) della distribuzione binomiale data una certa variabile casuale q , il numero di prove (dimensione) e la probabilità di successo di ciascuna prova (prob). La sintassi per utilizzare qbinom è la seguente:

qbinom(q, dimensione, prob)

In termini semplici, puoi usare qbinom per scoprire il p-esimo quantile della distribuzione binomiale.

Il codice seguente mostra alcuni esempi di qbinom in azione:

 #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

La funzione rbinom genera un vettore di variabili casuali distribuite binomiali data una lunghezza del vettore n , un numero di prove (dimensione) e una probabilità di successo per ciascuna prova (prob). La sintassi per utilizzare rbinom è la seguente:

rbinom(n, dimensione, prob)

Il codice seguente mostra alcuni esempi di rnorm in azione:

 #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

Si noti che più variabili casuali creiamo, più il numero medio di successi si avvicina al numero di successi previsto.

Nota: “Numero atteso di successi” = n * p dove n è il numero di prove e p è la probabilità di successo per ciascuna prova.

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *