Alternativa ai grafici a setaccio / mosaico per le tabelle di contingenza


17

Una volta mi sono imbattuto in un tipo di trama per dati categorici (ad esempio, tabelle di contingenza) su Internet, che mi è davvero piaciuto, ma non l'ho mai trovato di nuovo, e non so nemmeno come si chiama. Era essenzialmente come una trama del setaccio, in quanto le altezze delle righe e le larghezze delle colonne erano ridimensionate rispetto alle probabilità marginali. Pertanto, ogni riquadro è stato ridimensionato in base alla frequenza relativa prevista in indipendenza. Tuttavia, differiva da una trama del setaccio in quanto, piuttosto che tracciare il tratteggio incrociato all'interno di ogni scatola, tracciava un punto (come in un diagramma a dispersione) in una posizione scelta casualmente da un'uniforme bivariata per ogni osservazione. In questo modo, la densità dei punti riflette quanto i conteggi osservati corrispondono ai conteggi previsti. Cioè, se la densità fosse simile in ogni riquadro, il modello null sarebbe ragionevole, ) potrebbe non essere molto probabile con il modello null. Poiché i punti vengono tracciati anziché tratteggio incrociato, esiste una corrispondenza semplice e intuitiva tra l'elemento tracciato e il conteggio osservato, il che non è necessariamente vero per i grafici a setaccio (vedere di seguito). Inoltre, il posizionamento casuale dei punti conferisce alla trama un aspetto "organico". Inoltre, il colore potrebbe essere utilizzato per evidenziare le caselle / celle che differiscono fortemente dal modello nullo e una matrice del diagramma potrebbe essere utilizzata per esaminare le relazioni a coppie tra molte variabili diverse, in modo da incorporare i vantaggi di grafici simili. io,j

  • Qualcuno sa come si chiama questa trama?
  • Esiste un pacchetto / funzione che lo farà facilmente in R, o altro software (diciamo, Mondrian)? Non riesco a trovare nulla di simile in VCD . Certo, potrebbe essere un codice difficile da zero, ma sarebbe un dolore.

Ecco un semplice esempio di una trama setaccio, si noti che è facile vedere come i conteggi attesi per le diverse categorie dovrebbero essere riprodotti con il modello null, ma è difficile conciliare il tratteggio incrociato con i numeri reali, producendo una trama che non è abbastanza facile da leggere ed esteticamente orribile:

    B ~B
 A 38  4
~A  3 19

inserisci qui la descrizione dell'immagine
Per quello che vale, una trama a mosaico ha una sorta di problema opposto: sebbene sia più facile vedere quali celle hanno conteggi 'troppi' o 'troppo pochi' (rispetto al modello nullo), è più difficile riconoscere quali siano le relazioni tra i conteggi previsti sarebbero stati. In particolare, le larghezze delle colonne sono ridimensionate rispetto alla probabilità marginale, ma le altezze delle righe non lo sono, rendendo quasi impossibile estrarre quell'informazione.
inserisci qui la descrizione dell'immagine
E ora qualcosa di completamente diverso...

  • Qualcuno sa da dove viene la convenzione di usare il blu per "troppi" e il rosso per "troppo pochi"? Questo è sempre stato controintuitivo per me. Mi sembra che la densità eccezionalmente alta (o troppe osservazioni) si accompagni al caldo , e la bassa densità si accompagni al freddo , e che (almeno nell'illuminazione del palcoscenico) i rossi siano caldi e i blu siano freddi .

Aggiornamento: se ricordo bene, la trama che ho visto era in un pdf di un capitolo (introduzione o ch1) da un libro che è stato reso disponibile gratuitamente online come teaser di marketing. Ecco una versione approssimativa dell'idea che ho codificato da zero:
inserisci qui la descrizione dell'immagine
anche con questa versione grezza, penso che sia più facile da leggere rispetto alla trama del setaccio e in qualche modo più facile della trama del mosaico (ad esempio, è più facile riconoscere quali sono le relazioni tra le frequenze cellulari sarebbe sotto indipendenza). Sarebbe bello avere una funzione che: a. lo farebbe automaticamente con qualsiasi tabella di contingenza, b. potrebbe essere usato come elemento costitutivo di una matrice di trama e c. avrebbe le belle caratteristiche che derivano dalle trame sopra (come la leggenda dei residui standardizzata sulla trama del mosaico).


Quindi, essenzialmente vuoi una trama a mosaico con un diverso tipo di riempimento? La Rfunzione assocplotsi avvicina a ciò che intendi? In caso contrario, scommetto che un Rprogrammatore potrebbe modificarlo o mosaicplotfare quello che vuoi.
Peter Flom - Ripristina Monica

1
Riferimenti correlati di interesse, Shadings basati su residui per la visualizzazione dell'indipendenza (condizionale) ( Zeileis et al. 2007 ), PDF qui e un altro thread qui sulla visualizzazione di tabelle di contingenza con alcuni riferimenti. Credo che l'articolo Zeileis abbia una bella discussione sul colore che potrebbe rispondere alla tua ultima domanda (potrebbe essere utile esaminare i riferimenti per vedere se citano anche il grafico di cui stai parlando).
Andy W

È l'opposto, @PeterFlom, voglio essenzialmente un setaccio con un diverso tipo di riempimento. In alternativa, potresti dire che voglio un diagramma a mosaico in cui le caselle visualizzate sono ridimensionate rispetto alle frequenze previste in stato di indipendenza (e forse anche un diverso tipo di riempimento).
gung - Ripristina Monica

"Qualcuno sa da dove viene la convenzione di usare il blu per" troppi "e il rosso per" troppo pochi "? Questo è sempre stato controintuitivo per me." Buon punto. È davvero controintuitivo. Lo spettro della luce va approssimativamente dal blu a sinistra (associato a lunghezze d'onda più piccole) al rosso a destra (associato a lunghezze d'onda maggiori). I display a mosaico sembrano invertirlo in testa ...
landroni,

L'idea del diagramma del setaccio è che il numero di caselle in ciascuna cella è proporzionale alla frequenza osservata, quindi la densità relativa mostra una frequenza maggiore o minore del previsto. Se non ti piacciono i colori, puoi facilmente cambiarli dalle impostazioni predefinite. Se non ti piace la funzione di ombreggiatura del setaccio predefinita, puoi facilmente scrivere la tua, ad esempio, shading.points()per fare quello che vuoi, all'interno del framework strucplot che è stato citato sopra ed è disponibile come vignetta nel vcdpacchetto.
user101089,

Risposte:


15

Il libro che hai descritto suona come "Visualizzazione dei dati categorici", Michael Friendly. La trama descritta nel 1 ° capitolo che sembra corrispondere alla tua richiesta è stata descritta come un tipo di modello concettuale per la visualizzazione dei dati della tabella di contingenza (descritta vagamente dall'autore come un modello di pressione dinamica con densità osservativa), e può essere vista nell'anteprima di google per Ch 1. Il libro è rivolto agli utenti SAS.

Un documento sull'argomento è indicato qui: www.datavis.ca/papers/koln/kolnpapr.pdf

"Modelli concettuali per la visualizzazione dei dati della tabella di contingenza", Michael Friendly.

http://i47.tinypic.com/148n5n7.jpg

inserisci qui la descrizione dell'immagine

* per inciso, l'autore è anche elencato come uno degli autori del pacchetto vcd (come è stato specificamente ispirato dal suo libro menzionato sopra) - forse potresti chiedergli direttamente se c'è una semplice modifica a una delle funzioni integrate che è non immediatamente evidente.

** Lo schema di colorazione sembra correlare il colore blu con deviazioni positive dall'indipendenza e rosso per deviazioni negative. Anche se lo schema rosso ha senso in quel contesto, forse sarebbe stato più appropriato usare il verde per rappresentare deviazioni positive.

http://www.datavis.ca/papers/asa92.html


2
Bel lavoro, il mistero è risolto! Devo effettivamente acquistare il libro invece di visualizzarne l'anteprima in varie parti e avere la mia libreria che mi invia capitoli di tanto in tanto. IMO questa forma di visualizzazione mi ricorda molte cose che i cartografi chiamano "mappe dei punti", e si potrebbe usare la letteratura da lì per giustificare come i punti sono uno strumento di visualizzazione migliore delle linee e dei tratteggi. È anche una buona letteratura in termini di posizionamenti preferenziali dei punti.
Andy W,

Questo mi dà un buon inizio. Grazie per l'aiuto.
gung - Ripristina Monica

1

Forse non quello che hai visto, ma per la visualizzazione delle partenze previste sotto i grafici della corrispondenza di indipendenza sono ben motivati.

http://www.jstatsoft.org/v20/i03/

(A parte questo, il libro di SAS e M Friendly si sbagliava sulla regolazione raccomandata e molte delle trame avevano degli artefatti e questo potrebbe aver distratto dal loro valore percepito.)


Grazie per il tuo aiuto, mi piacciono le trame di corrispondenza. Puoi dire di più su questo aggiustamento raccomandato che è stato sbagliato? Quale adattamento è stato? Come è stato impreciso? E cosa c'era di sbagliato nelle trame?
gung - Ripristina Monica

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.