-
Notifications
You must be signed in to change notification settings - Fork 9
Description
I'm not convinced everything is fine with
bootdht, even when merely dealing with geographic stratification. Here is an example with thesikadeerdata set, indirect survey with creation and decay rate plus strata.library(Distance) data(sikadeer) cu <- convert_units("centimeter", "kilometer", "square kilometer") easy <- ds(sikadeer, key="hn", truncation="10%", convert_units = cu) # Create list of multipliers mult <- list(creation = data.frame(rate=25, SE=5), decay = data.frame(rate=163, SE=14.2)) print(mult) deer.ests <- dht2(easy, flatfile=sikadeer, strat_formula=~Region.Label, convert_units=cu, multipliers=mult, stratification="geographical") print(deer.ests, report="density") plain.estimates <- attr(deer.ests, which = "density") analy.cis <- plain.estimates[, c("Region.Label", "LCI", "UCI")]How does the bootstrap handle this?
bootnosf <- bootdht(easy, flatfile = sikadeer, resample_transects = TRUE, convert_units=cu, summary_fun=bootdht_Dhat_summarize, multipliers = mult, cores=10, nboot=200) library(dplyr) boot.cis <- bootnosf %>% group_by(Label) %>% summarize(quant025 = quantile(Dhat, probs = 0.025), quant975 = quantile(Dhat, probs = 0.975)) print(boot.cis)Output
Analytical
analy.cis Region.Label LCI UCI 1 A 43.006276 127.032567 2 B 19.374792 71.306900 3 C 1.905592 7.983742 4 E 1.101750 12.052725 5 F 9.747757 22.992961 6 G 1.573342 43.363109 7 H 1.008389 2.378582 8 J 4.705814 11.100050 9 Total 12.643932 34.370969Bootstrap result
as.data.frame(boot.cis) Label quant025 quant975 1 A 51.3049436 98.679598 2 B 19.2213441 55.138872 3 C 2.7838666 5.298189 4 E 0.7472652 6.551853 5 F 13.2874121 16.994035 6 G 4.2230542 27.781516 7 H 1.3745599 1.758004 8 J 6.4146128 8.204017 9 Total 118.9993812 188.353451Stratum-specific confidence interval bounds are roughly comparable, but the interval for the entire study area are quite disparate. I don't suspect
bootdhtis calculating a weighted average, weighted by stratum areas. It cannot be taking a simple average because thse values are larger than any stratum-specific estimates. I don't know what calculation is being made bybootdhtWhatever the situation, the documentation for
bootdhtthat states
Note that only geographical stratification as supported in dht is allowed.is not accurate.