Hoe een bootstrap-standaardfout in r te berekenen
Bootstrapping is een methode die kan worden gebruikt om de standaardfout van een gemiddelde te schatten.
Het basisproces voor het berekenen van een bootstrapped standaardfout is als volgt:
- Neem k replicaatmonsters met vervanging uit een gegeven dataset.
- Bereken voor elk monster de standaardfout: s/√ n
- Dit resulteert in k verschillende schattingen van de standaardfout. Om de bootstrapped standaardfout te vinden, neemt u het gemiddelde van de k standaardfouten.
In de volgende voorbeelden worden twee verschillende methoden uitgelegd die kunnen worden gebruikt om een bootstrapped standaardfout in R te berekenen.
Methode 1: Gebruik het Startpakket
Eén manier om een standaard opstartfout in R te berekenen, is door de functie boot() uit de opstartbibliotheek te gebruiken.
De volgende code laat zien hoe u een bootstrap-standaardfout voor een bepaalde gegevensset in R kunt berekenen:
#make this example reproducible set. seeds (10) #load boot library library (boot) #define dataset x <- c(12, 14, 14, 15, 18, 21, 25, 29, 32, 35) #define function to calculate mean meanFunc <- function (x,i){mean(x[i])} #calculate standard error using 100 bootstrapped samples boot(x, meanFunc, 100) Bootstrap Statistics: original bias std. error t1* 21.5 0.254 2.379263
De ‘oorspronkelijke’ waarde van 21,5 toont het gemiddelde van de oorspronkelijke dataset. De “std. De waarde van 2,379263 geeft de bootstrap-standaardfout van het gemiddelde aan.
Merk op dat we in dit voorbeeld 100 bootstrap-steekproeven hebben gebruikt om de standaardfout van het gemiddelde te schatten, maar we hadden ook 1.000 of 10.000 kunnen gebruiken of een willekeurig aantal bootstrap-steekproeven dat we wilden.
Methode 2: Schrijf je eigen formule
Een andere manier om een bootstrapped standaardfout te berekenen is door onze eigen functie te schrijven.
De volgende code laat zien hoe u dit doet:
#make this example reproducible set. seeds (10) #load boot library library (boot) #define dataset x <- c(12, 14, 14, 15, 18, 21, 25, 29, 32, 35) mean(replicate(100, sd( sample (x, replace= T ))/sqrt( length (x)))) [1] 2.497414
De bootstrapped standaardfout blijkt 2.497414 te zijn.
Merk op dat deze standaardfout vrij gelijkaardig is aan die berekend in het vorige voorbeeld.