bouts2NLS {diveMove} | R Documentation |
Functions to model a mixture of 2 random Poisson processes to histogram-like data of log frequency vs interval mid points. This follows Sibly et al. (1990) method.
bouts2.nlsFUN(x, a1, lambda1, a2, lambda2) bouts2.nls(lnfreq, start, maxiter) bouts2.nlsBEC(fit) plotBouts2.nls(fit, lnfreq, bec.lty, ...)
x |
Numeric vector with values to model. |
a1, lambda1, a2, lambda2 |
Parameters from the mixture of Poisson processes. |
lnfreq |
data frame with named components lnfreq (log frequencies) and corresponding x (mid points of histogram bins). |
start, maxiter |
Arguments passed to nls . |
fit |
nls object. |
bec.lty |
Line type specification for drawing the BEC reference line. |
... |
Arguments passed to plot.default . |
bouts2.nlsFUN
is the function object defining the nonlinear
least-squares relationship in the model. It is not meant to be used
directly, but is used internally by bouts2.nls
.
bouts2.nls
fits the nonlinear least-squares model itself.
bouts2.nlsBEC
calculates the BEC from a list object, as the one
that is returned by nls
, representing a fit of the
model. plotBouts2.nls
plots such an object.
bouts2.nlsFUN
returns a numeric vector evaluating the mixture of 2
Poisson process.
bouts2.nls
returns an nls object resulting from fitting this
model to data.
bouts2.nlsBEC
returns a number corresponding to the bout ending
criterion derived from the model.
plotBouts2.nls
plots the fitted model with the corresponding
data.
Sebastian P. Luque spluque@gmail.com
Sibly, R.; Nott, H. and Fletcher, D. (1990) Splitting behaviour into bouts Animal Behaviour 39, 63-69.
bouts.mle
for a better approach.
data(divesSummary) ## Postdive durations postdives <- divesSummary$postdive.dur[divesSummary$trip.no == 2] postdives.diff <- abs(diff(postdives)) ## Remove isolated dives postdives.diff <- postdives.diff[postdives.diff < 2000] ## Construct histogram lnfreq <- boutfreqs(postdives.diff, bw=0.1, plot=FALSE) startval <- boutinit(lnfreq, 50) ## Fit the 2 process model bout.fit1 <- bouts2.nls(lnfreq, start=startval, maxiter=500) summary(bout.fit1) plotBouts(bout.fit1) ## Estimated BEC bec2(bout.fit1)