Bootstrap eines großen Datensatzes

Ich möchte einen großen Datensatz bootstrappen, der mehrere Spalten- und Zeilenvariablen enthält. Das Folgende ist eine vereinfachte Neuerstellung meines Datensatzes:

charDataDiff <- data.frame(c('A','B','C'), matrix(1:72, nrow=9))
colnames(charDataDiff) <- c("patchId","s380","s390","s400","s410","s420","s430","s440","s450")

Trennen Sie die Daten mitpatchId als die Kriterien. Dadurch werden drei Listen erstellt: eine für jede Variable

idColor <-  c("A", "B", "C")
(patchSpectrum <- lapply(idColor, function(idColor) charDataDiff[charDataDiff$patchId==idColor,]))

Erstellt die FunktionsampleBoot das probierenpatchSpectrum

sampleBoot <-  function(nbootstrap=2, patch=3){
    return(lapply(1:nbootstrap, function(i)
             {patchSpectrum[[patch]][sample(1:nrow(patchSpectrum[[patch]]),replace=TRUE),]}))}

Beispiel:

sampleBoot(5,3)

Hier stecke ich fest:

Ich muss jeden probierenpatchId Liste zusammen mit jeder Spaltenvariablen (was mit dem obigen "sampleBoot" leicht zu bewerkstelligen ist),Nimm den Median von jedempatchId Stichprobenlisteniteration undErstellen Sie eine neue Population der Mediane, um parametrische Parameter zu berechnen. Ich kann es manuell machen, aber das wäre dumm.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage