La centratura è necessaria quando si avvia il bootstrap del campione?


13

Durante la lettura di come approssimare la distribuzione del campione medio mi sono imbattuto nel metodo bootstrap non parametrico. Apparentemente si può approssimare la distribuzione di mediante la distribuzione di , dove indica la media campionaria di l'esempio bootstrap.X¯nμX¯nX¯nX¯n

La mia domanda allora è: ho bisogno del centraggio? Per che cosa?

Non potrei solo approssimare di \ mathbb {P} \ left (\ bar {X} _n ^ * \ leq x \ right) ?P(X¯nx)P(X¯nx)


Non vedo perché devi centrare qualcosa. Tutti gli esempi discussi qui hanno le stesse dimensioni, giusto?
Bitwise,

Stesse dimensioni, sì. Non vedo nemmeno il motivo del centraggio. Qualcuno sarebbe in grado di fornire una spiegazione matematica perché o perché non dobbiamo farlo? Voglio dire, possiamo dimostrare che il bootstrap funziona o non funziona se non centriamo?
Christin,

3
(A proposito, una prova che il bootstrap funziona per il caso in cui ci siamo concentrati può essere trovato in Bickel, PJ e DA Freedman (1981), Qualche teoria asintotica per il bootstrap .)
Christin

Sono curioso: perché questa domanda è stata sottoposta a downgrade?
cardinale il

n12(X¯nμ)n12(X¯nX¯n)N(0,σ2)

Risposte:


4

P(X¯nx)P(X¯nx)

Una variante dell'approccio di centraggio va al passo successivo e ridimensiona la statistica di bootstrap centrata con la deviazione standard di ricampionamento e la dimensione del campione, calcolando allo stesso modo della statistica. I quantili dalla distribuzione di queste statistiche t possono essere usati per costruire un intervallo di confidenza o eseguire un test di ipotesi. Questo è il metodo bootstrap-t e fornisce risultati superiori quando si fanno inferenze sulla media.

s

T=X¯nX¯s/n

Tμ

X¯T0.975sn,X¯T0.025sn

Considera i risultati della simulazione di seguito, dimostrando che con una distribuzione mista molto distorta gli intervalli di confidenza di questo metodo contengono il valore reale più frequentemente rispetto al metodo percentile di bootstrap o una tradizionale inversione di statistica senza bootstrap.

compare.boots <- function(samp, reps = 599){
    # "samp" is the actual original observed sample
    # "s" is a re-sample for bootstrap purposes

    n <- length(samp)

    boot.t <- numeric(reps)
    boot.p <- numeric(reps)

    for(i in 1:reps){
        s <- sample(samp, replace=TRUE)
        boot.t[i] <- (mean(s)-mean(samp)) / (sd(s)/sqrt(n))
        boot.p[i] <- mean(s)
    }

    conf.t <- mean(samp)-quantile(boot.t, probs=c(0.975,0.025))*sd(samp)/sqrt(n)
    conf.p <- quantile(boot.p, probs=c(0.025, 0.975))

    return(rbind(conf.t, conf.p, "Trad T test"=t.test(samp)$conf.int))
}

# Tests below will be for case where sample size is 15
n <- 15

# Create a population that is normally distributed
set.seed(123)
pop <- rnorm(1000,10,1)
my.sample <- sample(pop,n)
# All three methods have similar results when normally distributed
compare.boots(my.sample)

Ciò fornisce quanto segue (conf.t è il metodo bootstrap t; conf.p è il metodo percentile bootstrap).

          97.5%     2.5%
conf.t      9.648824 10.98006
conf.p      9.808311 10.95964
Trad T test 9.681865 11.01644

Con un singolo esempio da una distribuzione distorta:

# create a population that is a mixture of two normal and one gamma distribution
set.seed(123)
pop <- c(rnorm(1000,10,2),rgamma(3000,3,1)*4, rnorm(200,45,7))
my.sample <- sample(pop,n)
mean(pop)
compare.boots(my.sample)

Questo dà quanto segue. Notare che "conf.t" - la versione bootstrap t - fornisce un intervallo di confidenza più ampio rispetto agli altri due. Fondamentalmente, è meglio rispondere alla distribuzione insolita della popolazione.

> mean(pop)
[1] 13.02341
> compare.boots(my.sample)
                97.5%     2.5%
conf.t      10.432285 29.54331
conf.p       9.813542 19.67761
Trad T test  8.312949 20.24093

Infine ecco mille simulazioni per vedere quale versione fornisce intervalli di confidenza che sono spesso corretti:

# simulation study
set.seed(123)
sims <- 1000
results <- matrix(FALSE, sims,3)
colnames(results) <- c("Bootstrap T", "Bootstrap percentile", "Trad T test")

for(i in 1:sims){
    pop <- c(rnorm(1000,10,2),rgamma(3000,3,1)*4, rnorm(200,45,7))
    my.sample <- sample(pop,n)
    mu <- mean(pop)
    x <- compare.boots(my.sample)
    for(j in 1:3){
        results[i,j] <- x[j,1] < mu & x[j,2] > mu
    }
}

apply(results,2,sum)

Ciò fornisce i risultati seguenti: i numeri sono i tempi su 1.000 in cui l'intervallo di confidenza contiene il valore reale di una popolazione simulata. Si noti che il vero tasso di successo di ogni versione è notevolmente inferiore al 95%.

     Bootstrap T Bootstrap percentile          Trad T test 
             901                  854                  890 

Grazie, è stato molto istruttivo. Questo .pdf (da una lezione) descrive un avvertimento per la tua conclusione: psychology.mcmaster.ca/bennett/boot09/percentileT.pdf Questo è un riassunto di ciò che dice Bennet: Molti set di dati sono costituiti da numeri che sono> = 0 (ovvero dati che può essere contato), nel qual caso l'IC non dovrebbe contenere valori negativi. Utilizzando il metodo bootstrap-t ciò può verificarsi, rendendo non plausibile l'intervallo di confidenza. Il requisito che i dati siano> = 0 è in violazione della normale ipotesi di distribuzione. Questo non è un problema quando si costruisce un CI con avvio a percentile
Hannes Ziegler
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.