library(Distance) amakihi <- read.csv(file="amakihi.csv") scalemin <- sd(amakihi$MAS, na.rm = TRUE) # used in plotting par(mfrow=c(3,2)) hist(amakihi$distance, breaks=seq(0,260), main="",xlab = "Distance") boxplot(amakihi$distance[amakihi$OBS!=""]~amakihi$OBS[amakihi$OBS!=""], xlab="Observer", ylab="Distance(m)") # amakihi <- amakihi[amakihi$distance<82.5, ] hist(amakihi$distance[amakihi$distance<82.5], breaks=33, main="",xlab = "Distance") plot(amakihi$MAS, amakihi$distance, xlab="Minutes after sunrise", ylab="Distance(m)", pch=19, cex=0.6) abline(reg=lm(amakihi$distance~amakihi$MAS),lwd=2) hist(amakihi$distance[amakihi$distance<82.5], breaks=10, main="",xlab = "Distance") boxplot(amakihi$distance~amakihi$HAS, xlab="Hour", ylab="Distance(m)") par(mfrow=c(1,1)) library(devtools) install_github("DistanceDevelopment/Distance", username = dill) fit.and.assess <- function(data=amakihi, key="hn", adj="cos", cov=c("MAS"), plotddf = FALSE) { mystring <- ifelse(length(cov)==2, paste(cov[1],cov[2],sep="+"), cov[1]) covariates <- as.formula(paste("~", mystring)) model.fit <- ds(data, key=key, adjustment=adj, formula=covariates, transect="point", truncation=82.5) if (plotddf) plot(model.fit, pl.den=0, pch=19, cex=0.7, main=paste(key, adj, cov)) aic <- model.fit$ddf$criterion pars <- length(model.fit$ddf$par) gof <- ddf.gof(model.fit$ddf) chisq.val <- gof$chisquare$chi1$chisq chisq.p <- gof$chisquare$chi1$p cvm.p <- gof$dsgof$CvM$p ks.p <- gof$dsgof$ks$p findings <- list(formula=mystring, key=key, aic=aic, pars=pars, chisq.val=chisq.val, chisq.p=chisq.p, cvm.p=cvm.p, ks.p=ks.p) return(findings) } # rescale MAS amakihi$MAS <- amakihi$MAS/sd(amakihi$MAS, na.rm=TRUE) amakihi$HAS <- as.factor(amakihi$HAS) hour.hn <- fit.and.assess(key="hn", cov=c("HAS")) hour.hr <- fit.and.assess(key="hr", adj=NULL, cov=c("HAS")) obs.hour.hn <- fit.and.assess(key="hn", cov=c("OBS","HAS")) obs.hour.hr <- fit.and.assess(key="hr", adj=NULL, cov=c("OBS","HAS")) obs.min.hn <- fit.and.assess(key="hn", cov=c("OBS","MAS")) obs.min.hr <- fit.and.assess(key="hr", adj=NULL, cov=c("OBS","MAS")) min.hn <- fit.and.assess(key="hn", cov=c("MAS")) min.hr <- fit.and.assess(key="hr", adj=NULL, cov=c("MAS")) obs.hn <- fit.and.assess(key="hn", cov=c("OBS")) obs.hr <- fit.and.assess(key="hr", adj=NULL, cov=c("OBS")) hn <- fit.and.assess(key="hn", cov=c(1)) hr <- fit.and.assess(key="hr", adj=NULL, cov=c(1)) uni <- fit.and.assess(key="uni", cov=c(1))