J'ai un vecteur de nombres que j'ai téléchargé ici (... / code / MyData.Rdata) en utilisant dput.
Je voudrais obtenir le bca ci donc j'ai écrit ce code:
my.mean <- function(dat, idx){
return (mean(dat[idx], na.rm = TRUE))
}
boot.out<-boot(data=my.data, statistic = my.mean, R=1000)
Mais quand je lance ce qui suit, j'obtiens ceci:
> boot.ci(boot.out)
Error in bca.ci(boot.out, conf, index[1L], L = L, t = t.o, t0 = t0.o, :
estimated adjustment 'a' is NA
In addition: Warning message:
In boot.ci(boot.out) : bootstrap variances needed for studentized intervals
Quelqu'un peut-il m'aider à déterminer la cause de cette erreur? Merci de votre aide!
Réponses:
Comme vous pouvez le voir dans votre message d'erreur, les
boot.ci
appelsbca.ci
. Parce que l'boot.out
objet ne fournit pasL
, les valeurs d'influence empiriques pour la statistique que vous calculez sur les données,bca.ci
essaient de les calculer en utilisant laempinf
fonction, puis (comme Michael le dit), il les utilise pour calculer la constante d'accélération:Mais avec un petit nombre de réplications,
empinf
échoue parfois et renvoie un vecteur deNA
valeurs. Le résultat est que vous n'avez aucune valeur pourL
,a
ne peut pas être calculé et vous obtenez votre erreur. Comme le dit ocram, l'augmentation du nombre de réplications boostrap corrigera ce problème. Même doublerR
à 2000 devrait probablement le faire.la source