Eu tenho um vetor de números que eu enviei aqui (... / code / MyData.Rdata) usando dput.
Gostaria de obter o bca ci, então eu escrevi este código:
my.mean <- function(dat, idx){
return (mean(dat[idx], na.rm = TRUE))
}
boot.out<-boot(data=my.data, statistic = my.mean, R=1000)
Mas quando executo o seguinte, recebo o seguinte:
> 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
Alguém pode me ajudar a descobrir o que está causando esse erro? Obrigado pela ajuda!
Respostas:
Como você pode ver na sua mensagem de erro,
boot.ci
chamabca.ci
. Como oboot.out
objeto não forneceL
, os valores empíricos de influência para a estatística que você está calculando nos dados,bca.ci
tentam calculá-los usando aempinf
função e, em seguida (como Michael diz), eles os usam para calcular a constante de aceleração:Mas, com um pequeno número de repetições,
empinf
às vezes falha e retorna um vetor deNA
valores. O resultado é que você não tem valores paraL
,a
não pode ser calculado e obtém seu erro. Como o ocram diz, aumentar o número de replicações de boostrap corrigirá isso. Mesmo dobrarR
para 2000 provavelmente deve fazê-lo.fonte