Visualizza la distribuzione binomiale bivariata


11

Domanda: come appare una distribuzione binomiale bivariata nello spazio tridimensionale?

Di seguito è la funzione specifica che vorrei visualizzare per vari valori dei parametri; vale a dire, , e .p 1 p 2np1p2

f(x1,x2)=n!x1!x2!p1x1p2x2,x1+x2=n,p1+p2=1.

Si noti che esistono due vincoli; e . Inoltre, è un numero intero positivo, diciamo .p 1 + p 2 = 1 n 5x1+x2=np1+p2=1n5

In hanno fatto due tentativi di tracciare la funzione usando LaTeX (TikZ / PGFPLOTS). Nel fare ciò, ottengo i grafici seguenti per i seguenti valori: , e , e, , e , rispettivamente. Non sono riuscito a implementare il vincolo sui valori del dominio; , quindi sono un po 'perplesso.p 1 = 0.1 p 2 = 0.9 n = 5 p 1 = 0.4 p 2 = 0.6 x 1 + x 2 = nn=5p1=0.1p2=0.9n=5p1=0.4p2=0.6x1+x2=n

Una visualizzazione prodotta in qualsiasi lingua andrebbe bene (R, MATLAB, ecc.), Ma sto lavorando in LaTeX con TikZ / PGFPLOTS.

Primo tentativo

p 1 = 0,1n=5 , ep1=0.1p2=0.9

inserisci qui la descrizione dell'immagine

Secondo tentativo

p 1 = 0.4 p 2 = 0.6n=5 , ep1=0.4p2=0.6

inserisci qui la descrizione dell'immagine

Modificare:

Per riferimento, ecco un articolo contenente alcuni grafici. Il titolo dell'articolo è "Una nuova distribuzione binomiale bivariata" di Atanu Biswasa e Jing-Shiang Hwang. Statistics & Probability Letters 60 (2002) 231–240.

Modifica 2: Per chiarezza, e in risposta a @GlenB nei commenti, di seguito è un'istantanea di come la distribuzione mi è stata presentata nel mio libro. Il libro non fa riferimento a casi degenerati / non degenerati e così via. Lo presenta semplicemente in quel modo e ho cercato di visualizzarlo. Saluti! Inoltre, come sottolineato da @JohnK, è probabile che ci sia un refuso riguardo a x1 + x1 = 1, che suggerisce dovrebbe essere x1 + x1 = n.

inserisci qui la descrizione dell'immagine

Immagine dell'equazione da:

Spanos, A (1986) Basi statistiche della modellistica econometrica. Cambridge University Press


5
Ma non dovrebbe essere un continuo, vero? Entrambe le variabili casuali sono discrete.
JohnK,

1
Quindi x1 e x2 sono indipendenti, giusto? Hai bisogno di una trama pseudo-3D? Una mappa di calore sarebbe accettabile?
gung - Ripristina Monica

1
qualcosa del genere ?
Antoni Parellada,

2
@JohnK Se e hai a che fare con (e è semplicemente ). Questo è binomiale univariato (o, considerato bivariato, è degenerato ). p 1 + p 2 = 1 X 1Binomiale ( n , p 1 ) X 2 n - X 1x1+x2=np1+p2=1X1Binomial(n,p1)X2nX1
Glen_b

3
Non hai una specifica per un binomio bivariato nella tua domanda. (C'è più di un modo per specificare una distribuzione bivariata che potrebbe essere plausibilmente chiamata "binomiale". Non ne hai nessuno, anche se il tuo degenerato sarebbe un caso speciale di alcuni di essi.) ... i disegni in i riferimenti Biswasa e Hwang non sono adatti per la visualizzazione di un pmf bivariato discreto. In breve, la tua domanda non ha nulla da disegnare e il tuo riferimento è utile principalmente come esempio di cosa evitare.
Glen_b

Risposte:


8

Ci sono due pezzi in questo: prima devi capire quali sono le probabilità individuali, poi devi in ​​qualche modo tracciarle.

Un PMF binomiale è solo un insieme di probabilità rispetto a una serie di "successi". Un PMF binomiale bivariato sarà un insieme di probabilità su una griglia di possibili combinazioni di "successi". Nel tuo caso, hai , quindi (tenendo presente che successi è una possibilità) ci sono possibili esiti nella distribuzione binomiale griglia / bivariata. 0ni=nj=506×6=36

Possiamo prima calcolare i PMF binomiali marginali, perché è così semplice. Poiché le variabili sono indipendenti, ogni probabilità congiunta sarà solo il prodotto delle probabilità marginali; questa è algebra matriciale. Qui mostro questo processo usando il Rcodice:

b1 = dbinom(0:5, size=5, prob=0.1);  sum(b1)  # [1] 1
b9 = dbinom(0:5, size=5, prob=0.9);  sum(b9)  # [1] 1
b4 = dbinom(0:5, size=5, prob=0.4);  sum(b4)  # [1] 1
b6 = dbinom(0:5, size=5, prob=0.6);  sum(b6)  # [1] 1

b19 = b1%o%b9;  sum(b19)  # [1] 1
rownames(b19) <- colnames(b19) <- as.character(0:5)
round(b19, 6)
#       0        1        2        3        4        5
# 0 6e-06 0.000266 0.004783 0.043047 0.193710 0.348678
# 1 3e-06 0.000148 0.002657 0.023915 0.107617 0.193710
# 2 1e-06 0.000033 0.000590 0.005314 0.023915 0.043047
# 3 0e+00 0.000004 0.000066 0.000590 0.002657 0.004783
# 4 0e+00 0.000000 0.000004 0.000033 0.000148 0.000266
# 5 0e+00 0.000000 0.000000 0.000001 0.000003 0.000006
b46 = b4%o%b6;  sum(b46)  # [1] 1
rownames(b46) <- colnames(b46) <- as.character(0:5)
round(b46, 3)
#       0     1     2     3     4     5
# 0 0.001 0.006 0.018 0.027 0.020 0.006
# 1 0.003 0.020 0.060 0.090 0.067 0.020
# 2 0.004 0.027 0.080 0.119 0.090 0.027
# 3 0.002 0.018 0.053 0.080 0.060 0.018
# 4 0.001 0.006 0.018 0.027 0.020 0.006
# 5 0.000 0.001 0.002 0.004 0.003 0.001

A questo punto, abbiamo le due matrici richieste di probabilità. Dobbiamo solo decidere come vogliamo tracciarli. Ad essere sincero, non sono un grande fan dei grafici a barre 3D. Perché Rsembra essere d'accordo con me, ho creato questi grafici in Excel:

b19:

inserisci qui la descrizione dell'immagine

b46:

inserisci qui la descrizione dell'immagine


Grazie per la presentazione più il codice R. Questo mi porta a chiedere di x1 + x2 = n. Se questa condizione è valida, dovrebbe esserci una sola linea di pilastri come qui presentata: reference.wolfram.com/language/ref/MultinomialDistribution.html Il grafico del wolfram presumo sia quello che @Glen_b ha definito caso degenerato? Questo significa che hai presentato il caso non degenerato?
Graeme Walsh,

1
GraemeWalsh, la mia presentazione non mostra un binomio bivariato in cui x1 + x2 = n. Come @Glen_b ha ampiamente discusso nei commenti e nella sua risposta, non definirei davvero una "distribuzione binomiale bivariata" senza qualificarla. Inoltre, significherebbe che x1 e x2 non sono indipendenti, come hai detto nel tuo commento di risposta, ma perfettamente dipendenti. In verità, non ho notato che questa era una variante così bizzarra (puoi biasimarmi per non aver letto abbastanza da vicino). Come ha mostrato Glen_b, quella versione sarebbe una singola linea di pilastri. Quello che ho presentato è stato il caso non degenerato.
gung - Ripristina Monica

@gung Mi piacciono le tue nuove trame. Penso che la tua discussione riguardi bene il caso degenerato ("devi capire quali sono le probabilità individuali" dice davvero tutto; i calcoli effettivi per il caso degenerato sono banali); Ho appena eseguito quei calcoli banali.
Glen_b

7

La risposta di Gung è una buona risposta per un vero binomio bivariato, spiegando bene i problemi (consiglierei di accettarlo come una buona risposta alla domanda del titolo, molto probabilmente utile per gli altri).

L'oggetto matematico che presenti in realtà nella tua modifica è davvero un binomio in scala univariata. Qui non è il valore preso dal conteggio binomiale ma dalla proporzione (il binomio diviso per ). nx1n

Quindi definiamo le cose correttamente. Si noti che in realtà non viene offerta alcuna definizione della variabile casuale, quindi restano alcune ipotesi.

Consenti a Nota che quando diamo una formula matematica per è necessario quali valori può assumere, quindi . Lascia e nota che .Y1binomial(n,p1),P(Y1=y1)y1y1=0,1,...,nX1=Y1/nx1=0,16,26,...,1

Quindi l'equazione che dai è il pmf per (notando che e ).P(X1=x1)x2=nx1p2=1p1

Per , è simile al seguente:n=6,p1=0.3

inserisci qui la descrizione dell'immagine

Possiamo mettere i valori di sul sopra abbastanza facilmente, semplicemente mettendo un secondo set di etichette sotto i valori di pari a (forse in un colore diverso) per indicare il valore preso da .x2x11x1x2

Potremmo considerarlo un binomio bivariato degenerato (ridimensionato):

inserisci qui la descrizione dell'immagine

ma è un po 'allungare chiamare davvero ciò che è definito nel libro un binomio bivariato, (dal momento che è effettivamente un binomio univariato).

Partendo dal presupposto che qualcuno vorrà generare un grafico simile a quello 3D, questo piccolo frammento di codice (R) si avvicina molto al secondo diagramma sopra:

y = 0:6
x1 = y/6
x2 = 1-x1
p = dbinom(y,6,.3)
scatterplot3d(x1,x2,p,grid=TRUE, box=FALSE, cex.lab=1.2,
        color=3, cex.main=1.4,pch=21,bg=1,, type="h",angle=120,
        main="degenerate scaled binomial", ylab="x2", xlab="x1", 
        zlab="prob")

(È necessario il scatterplot3dpacchetto che contiene la funzione con lo stesso nome.)

Un binomio bivariato "vero" (non degenerato) presenta una variazione in entrambe le variabili contemporaneamente. Ecco un esempio di un particolare tipo di binomio bivariato (non indipendente in questo caso). Ho fatto ricorso a colori diversi nella trama perché altrimenti è troppo facile perdersi nella foresta di "bastoni".

inserisci qui la descrizione dell'immagine

Esistono molti modi per ottenere un oggetto che potresti chiamare un binomio bivariato; questo tipo particolare è quello in cui hai , , ( tutti indipendenti), poi lasciare e .Xbin(n0,p)Ybin(ny,p)Zbin(nz,p)X1=X+YX2=X+Z

Questo produce binomio e che sono correlati (ma ha lo svantaggio di non produrre correlazioni negative).X1X2

Un'espressione per il pmf di questo particolare tipo di distribuzione binomiale bivariata è data in Hamdan, 1972 [1] ma non ho usato quel calcolo; si può facilmente fare il calcolo diretto (convoluzione numerica). In questo caso particolare era 4 e e erano solo 2 ciascuno, quindi il calcolo numerico diretto su tutta la griglia (49 valori nel risultato finale) non è difficile o oneroso. Si inizia con un bivariato degenerato (entrambe le dimensioni ) simile a quello degenerato nella foto sopra (ma più piccolo e sulla "diagonale principale" - anziché l'antidiagonale ( ) e quindi aggiungere i componenti indipendenti , diffondendo la probabilità lungo e fuori dalla diagonale.n0nynz=Xx1=x2x1+x2=n

[1]: Hamdan, MA (1972),
"Espansione canonica della distribuzione binomiale bivariata con indici marginali disuguali"
Rassegna statistica internazionale , 40 : 3 (dicembre), pagg. 277-280


Bello. Vale anche la pena notare che in questo casocorr(X1,X2)=1
JohnK

Glen_b. Grazie mille. Sottolineare che l'oggetto matematico che ho presentato (che mi è stato presentato!) È un binomio bivariato degenerato (ridimensionato) è stato molto utile! Non lo sapevo dall'inizio. Infine, una richiesta elementare! Sarebbe possibile per te essere esplicito (tramite la notazione matematica) su come definire un binomio bivariato vero o reale? Sarebbe utile, penso.
Graeme Walsh,

1
@Graeme Come ho già detto nei commenti (/ risposta), ci sono molti modi per ottenere un oggetto che potresti chiamare un binomio bivariato (in effetti il ​​titolo del riferimento Biswasa e Hwang nella tua domanda ti dice altrettanto). Questo non è univoco per il binomio, naturalmente, ci sono molte generalizzazioni bivariate disponibili di molte delle distribuzioni univariate più comunemente usate. Il "tipo particolare di binomio bivariato" che ho dato nella mia risposta è quello in cui hai , , (tutti indipendenti), poi lasciare e . ... ctdXbin(n0,p)Ybin(ny,p)Zbin(nz,p)X1=X+YX2=X+Z
Glen_b -Restate Monica

1
ctd ... Questo produce binomio e che sono correlati ma ha lo svantaggio di non produrre correlazioni negative, quindi non è utile come alcune altre formulazioni di binomio bivariato per la modellazione bivariata generale. In genere, quando generalizzi una famiglia di distribuzione univariata in una famiglia bivariata, devi scegliere quali proprietà desideri di più e quali puoi permetterti di rinunciare e quelle scelte porteranno a scelte diverse di famiglie bivariate. [La distribuzione normale è insolita - c'è una generalizzazione "ovvia" con praticamente tutto ciò che vorremmo.]X 2X1X2
Glen_b -Reinstate Monica

@Graeme ... Ho intenzione di aggiungere altri dettagli.
Glen_b

4

Mathematicaora è abbastanza forte in queste cose - ha la soluzione del tuo problema direttamente nella documentazione . Con piccole aggiunte ho creato un modello su cui giocare (con p = p1 = 0.4una migliore presentazione visiva). Ecco come appare l'interfaccia e come può essere controllata.

inserisci qui la descrizione dell'immagine

Frammento

Manipulate[
 Grid[{
   {DiscretePlot3D[
     PDF[MultinomialDistribution[n, {p, 1 - p}], {x, y}], {x, 0, 
      n}, {y, 0, n}, PlotLabel -> Row[{"n = ", n}], 
     ExtentSize -> Right],

    DiscretePlot3D[
     CDF[MultinomialDistribution[n, {p, 1 - p}], {x, y}], {x, 0, 
      n}, {y, 0, n}, PlotLabel -> Row[{"n = ", n}], 
     ExtentSize -> Right]}
   }]
 ,
 {{n, 5}, 1, 20, 1, Appearance -> "Labeled"},
 {{p, 0.4}, 0.1, 0.9},
 TrackedSymbols -> True
 ]

La cosa principale qui è PDF[MultinomialDistribution[n, {p, 1 - p}], {x, y}], che è autoesplicativa, credo. Multinomialsignifica solo che puoi prendere molte distribuzioni con ognuna piper la rispettiva variabile. La forma semplice è BinomialDistribution. Certo, potrei farlo manualmente, ma la regola è se hai una funzione incorporata - dovresti usarla.

Se hai bisogno di alcuni commenti sulla struttura del codice, per favore, fammelo sapere.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.