Qual è la differenza tra wilcox.test e coin :: wilcox_test in R?


13

Queste due funzioni esistono in R ma non conosco le loro differenze. Sembra che restituiscano gli stessi valori p solo quando si chiama wilcox.testcon correct=FALSE, e wilcox_test(nel pacchetto monete) con distribution="aymptotic". Per altri valori restituiscono valori p diversi. Inoltre wilcox.testrestituisce sempre W = 0 per il mio set di dati, indipendentemente dalle impostazioni dei suoi parametri:

x = c(1, 1, 1, 3, 3, 3, 3) e y = c(4, 4, 6, 7, 7, 8, 10)

Inoltre, quando provo a utilizzare strumenti diversi da R (alcuni disponibili online, altri come componenti aggiuntivi di Excel), a volte segnalano valori p diversi.

Quindi, come posso sapere quale strumento sta dando il valore p "corretto"?

Esiste un valore p "corretto" o se alcuni strumenti danno un valore p <0,05 dovrei essere felice? (A volte questi strumenti non offrono così tante possibilità di parametrizzazione come R.)

Cosa mi sto perdendo qui?

Risposte:


18

La chiave della tua domanda si trova in? Wilcox.test nella sezione Note:

La letteratura non è unanime in merito alle definizioni della somma dei ranghi di Wilcoxon e ai test di Mann-Whitney.

Ciò significa che esiste più di un modo per eseguire questo test non parametrico di modifica della posizione tra due campioni. Inoltre, data ciascuna definizione, esiste più di un modo per ottenere il valore ap. "esatto" significa che è assolutamente corretto, mentre "approssimativo" o "asintotico" sono entrambe approssimazioni della verità. Ecco perché ci sono più opzioni in entrambi wilcox.test()e wilcox_test(), e solo alcune corrispondono esattamente - quando entrambe le funzioni fanno esattamente la stessa cosa. Sembra che wilcox_test()possa ottenere valori p esatti anche quando ci sono valori legati, mentre wilcox.test()ritorna a un'approssimazione asintotica quando ci sono valori legati. Non saprei quale combinazione di calcoli statistici e di valore p sta facendo un componente aggiuntivo di Excel,

La tua prossima domanda è: perché wilcox.test()restituisce sempre 0. Per il set di dati creato, il valore della statistica test è 0 quando si esegue wilcox.test (x, y) ma saranno 49 quando si esegue wilcox.test (y, x) sebbene il valore p sia il stesso. Vedi la pagina di Wikipedia per i motivi. wilcox_test()restituisce una trasformazione Z della statistica restituita da wilcox.test(), motivo per cui hanno valori diversi della statistica test.

Esiste un valore p corretto? Sì, ma a volte è troppo difficile da calcolare, quindi abbiamo bisogno di usare metodi approssimativi (vedi? Wilcox_test per le descrizioni di come il calcolo esatto può fallire a causa di memoria insufficiente). Le differenze tra approssimazione e valore esatto per lo più non importeranno a meno che la vera differenza nella posizione dei due gruppi sia molto piccola.


(+1) Benvenuto nel nostro sito, Drew!
whuber
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.