2013-12-10 20 views
7

Bitte mich raus! Ich schätze jede Hilfe! Vielen Dank!Wiederholen Sie die Neuabtastung für 1000 Mal? Verwenden Sie lapply?

Ich habe Probleme bei Wiederholungen, die 1000 Mal wiederholen. Ich habe versucht, replicate(), um das zu tun, aber es funktioniert nicht. Gibt es eine andere Methode, das zu tun? Kann mir jemand zeigen, ob das vielleicht mit Hilfe von "lapply" gemacht wurde? Im Anschluss ist mein Code:

#sampling 1000 betas0 & 1 (coefficients) from the data 
get.beta=function(data,indices){ 
    data=data[indices,] #let boot to select sample 
    lm.out=lm(y ~ x,data=data) 
    return(lm.out$coefficients) 
} 
n=nrow(data) 
get.beta(data,1:n) 

bootcoe=boot(data,get.beta,R=1000) #generate 1000 random samples 
head(bootcoe$t) #look at the betas 

Aus dem obigen Code, den ich 1000 betas0 & 1 durch zufälliges Abtasten der Daten erhalten kann. Und ich würde das gerne 1000 mal machen, um verschiedene Betas zu bekommen. Wie soll ich das neben replicate() machen?

+0

So 'Replikation (1000, {your_codez})' funktioniert nicht? –

+0

ya, ich habe versucht rep (1000, function()) aber kann das Ergebnis nicht bekommen. – user2978129

+0

Ich habe nicht gesagt, 'function()' zu verwenden. Sie sollten geschweifte Klammern verwenden. –

Antwort

19

Dies ist eher eine erweiterte Kommentar, wo ich zeigen, dass replicate sollte funktionieren. Hier ist ein Beispiel für eine CLT. Ersetzen Sie einfach Ihre Linien zwischen den geschweiften Klammern.

x <- replicate(1000, { 
    mm <- runif(10) 
    mean(mm) 
    }) 
hist(x) 

enter image description here

+0

Danke @Roman. Also in meinem Fall, was sollte ich in die {} legen? Ich habe get.beta versucht, aber es gibt Fehler und bootcoe läuft für eine lange Zeit. Das Setzen von get.beta und bootcoe gibt wieder den Fehler. – user2978129

+0

Warum gibt es am Ende auch Mittelwerte (mm)? Vielen Dank ! – user2978129

+0

@ user2978129 Die letzte Zeile ist das Ergebnis Ihrer Funktion. Du solltest zwischen Klammern die Dinge setzen, die du bewerten willst ... 'n' mal. –