Я пытаюсь построить линейный график зависимости плотности в реальном масштабе, основываясь на оценках модели (hn.l.s). Но я застрял на обратном преобразовании его в реальный масштаб. Я прав в обратном преобразовании или я должен был идти прямо к сюжету ()?
Я пробовал backTransform (hn.l.s, type = "state") вместо "det", но ни одна из них не работает.
dist<-seq(0,60,15)
obs<-as.matrix(dat[,1:4])
site_covs<-data.frame(shrub=dat[,c("d.shrub")],light=dat[,c("light")])
umf<-unmarkedFrameDS(y=obs,siteCovs=site_covs,dist.breaks=c(dist),survey="point",unitsIn="m")
hn.1.s<-distsamp(~1~shrub,umf,keyfun="halfnorm",output="density",unitsOut="ha")
pred.hn.l.s<-predict(hn.l.s,"state",se.fit=TRUE)
backTransform(hn.l.s, type="det")
Ошибка в .local (obj, ...):
Невозможно напрямую выполнить обратное преобразование неотмеченной оценки с длиной> 1.
Я ожидал получить оценку обнаружения от:
backTransform(hn.l.s, type="det")
Который дал бы мне номер:
sigma<-[the number]
Тогда я бы оценил полунормальный опыт:
hn.l.s@estimates
И получил:
b<-exp([a diff number])
Затем рассчитывается:
p.hn.l.s<-1-exp(-(dist/sigma)^-b)
И получил сюжет с:
plot(dist,p.hn.l.s,type="l",xlim=c(0,60), ylim=c(0,1), xlab="Distance", ylab="Detection probability")