Dlaczego błąd „szacunkowa korekta” a „NA” jest generowany z pakietu rozruchowego R podczas obliczania przedziałów ufności przy użyciu metody bca?


14

Mam wektor liczb, które przesłałem tutaj (... / code / MyData.Rdata) przy użyciu dput.

Chciałbym dostać bca ci, więc napisałem ten kod:

my.mean <- function(dat, idx){
 return (mean(dat[idx], na.rm = TRUE))
} 

boot.out<-boot(data=my.data, statistic = my.mean, R=1000)

Ale gdy uruchomię następujące, otrzymuję to:

> 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

Czy ktoś może mi pomóc dowiedzieć się, co powoduje ten błąd? Dziękuję za pomoc!


3
Próbowałem z R = 10000 zamiast R = 1000 (i określenie type = 'bca' zamiast type = 'all', ponieważ to jest to, czego naprawdę chcesz) i to działa. Doszedłem więc do wniosku, że przyczyną tego błędu jest niewystarczająca liczba replik bootstrap ... ale nie mogę powiedzieć więcej ...
ocram 24.12

Odpowiedzi:


23

Jak widać z komunikatu o błędzie, boot.cipołączenia bca.ci. Ponieważ boot.outobiekt nie dostarcza danych L, empiryczne wartości wpływu dla statystyki, którą obliczasz na danych, bca.cipróbuje je obliczyć za pomocą empinffunkcji, a następnie (jak mówi Michael) używa ich do obliczenia stałej przyspieszenia:

L <- empinf(boot.out, index = index, t = t.o, ...)
a <- sum(L^3)/(6 * sum(L^2)^1.5)

Ale przy niewielkiej liczbie replikacji empinfczasami zawodzi i zwraca wektor NAwartości. Powoduje to, że nie masz wartości dla L, anie można obliczyć i pojawia się błąd. Jak mówi ocram, zwiększenie liczby replik boostrap to naprawi. RPrawdopodobnie nawet podwojenie do 2000 r.


1
+1 @Kieran Dzięki! Cieszę się, że moje przypuszczenia były pewne. Masz właściwą odpowiedź ze swojej wiedzy o zaangażowanych programach R. więc moja odpowiedź nie jest już potrzebna. Ktoś albo mnie nie lubił, albo pomyślał, że moja odpowiedź powinna być komentarzem. Z tych wszystkich powodów sensowne jest, żebym go teraz usunął.
Michael R. Chernick

4
Dla innych, którzy cierpią z powodu problemu: Według stat.ethz.ch/pipermail/r-help/2011- lutego / 269006.html liczba powtórzeń musi być większa niż liczba wierszy danych. Byłem nieco przesadzony, że potrzeba tylu powtórzeń ...
BurninLeo,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.