Come posso calcolare i valori p in R?

Sto cercando di costruire un test di ipotesi per la varianza di due popolazioni. La mia statistica di test è $ F = $$ {\ sigma_b ^ 2} $ / $ {\ sigma_A ^ 2} $. Voglio implementarlo come una funzione in R, quindi ho calcolato: a=function(B,A){ var(B)/var(A) }

Ora, voglio calcolare il valore p usando questa statistica di test in R. Come posso farlo?

Commenti

Risposta

Poiché stai calcolando la statistica F, potresti utilizzare la funzione pf.

Ad esempio, prendiamo come esempio i seguenti dati.

set.seed(123) x <- rnorm(50, mean = 0, sd = 2) y <- rnorm(30, mean = 1, sd = 1) f <- var(x)/var(y) # make sure to double for two-sided pf(f, df1=49, df2=29, lower.tail=F)*2 [1] 0.0001897506 

Come notato da Gung, non sono riuscito a rendermi conto che stai cercando di fare Hartley “s Prova Fmax. In tal caso, non è nemmeno necessario calcolare la statistica F o anche le varianze, puoi semplicemente utilizzare var.test.

var.test(x, y)$p.value [1] 0.0001897506 

Inoltre, come notato da gung, cè il test di Levene (leveneTest) nel pacchetto car.

Commenti

  • LOP sta tentando di condurre il test $ F $ -max di Hartley ' s $ F $ -max, quindi il se fornite non sono corrette (vedere qui , & qui ).
  • @gung Hai ragione, lho trascurato in modo imbarazzante. Aggiornato adesso.
  • Questo ' va bene, ' è una cosa facile da trascurare. Per favore, correggi il df nella tua risposta, però.

Lascia un commento

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