sliwinltr {adehabitatLT}R Documentation

Apply a Function on an Object of Class "ltraj", Using a Sliding Window


This function applies a function on an object of class "ltraj", using a sliding window.


sliwinltr(ltraj, fun, step, type = c("locs", "time"),
          units = c("sec", "min", "hour", "day"),
          plotit = TRUE, ...)



an object of class ltraj


the function to be applied, implying at least one of the descriptive parameters in the object of class ltraj (see below)


the half-width of the sliding window. If type=="locs", it is a number of relocations. If type=="time" it is a number described by units


character string. If type == "locs", step describes a number of relocations: if type == "time", step describes a time lag.


if type == "time", the time units described by step. Ignored otherwise


logical. Whether the result should be plotted


additional arguments to be passed to the function rec


An object of class ltraj is a list with one component per burst of relocations. The function fun is applied to each burst of relocations. This burst of relocations should be refered as x in fun. For example, to compute the mean of the distance between successive relocations, the function fun is equal to function(x) mean(x$dist).

Do not forget that some of the descriptive parameters in the object ltraj may contain missing values (see help(ltraj)). The function should therefore specify how to manage these missing values.


If type=="locs", a list with one component per burst of relocation containing the smoothed values for each relocation.

If type=="locs", a list with one component per burst of relocation. Each component is a data frame containing the time and the corresponding smoothed values for each date.


Clement Calenge

See Also

ltraj for additional information about objects of class ltraj


## Not run: 

## computes the average speed of the roe deer in a moving window of width
## equal to 60 minutes
toto <- sliwinltr(capreotf, function(x) mean(x$dist/x$dt, na.rm = TRUE),
                  step = 30, type = "time", units = "min")

## zoom before the peak
plot(toto[[1]][1:538,], ty="l")

## End(Not run)

[Package adehabitatLT version 0.3.25 Index]