PhysMove includes three metrics for quantifying intraspecific movement patterns that are based on four functions, including:
gyrationRad() and
plotPDF()entropy() and plotPDF()predictability() and
plotPDF()The gyrationRad() function calculates the dispersion
(i.e., the gyration radius) of each track in a dataset (Figure V16).
gyrationRad() requires a data frame with telemetry data
(see data
formatting) and includes two optional parameters:
map: create a map (map=TRUE, by default),
andmapCol: change the colour of the points, which indicate
average track location, and circles, which indicate how far each animal
dispersed (mapCol=c("Black", "Red"), by default).gyrationRad() outputs a data frame of the results that
were used to create the map, including:
Figure V16 Map illustrating dispersion patterns for
'tracks' dataset using gyrationRad() default
parameters. Black points represent the mean location of each track and
red circles represent how far each track dispersed (i.e., each track’s
gyration radius).
# Summarize gyration radius results
summary(GR)
#> ref avg_long avg_lat rG_(km)
#> Min. : 1 Min. :-0.4659 Min. :-1.48078 Min. : 61.10
#> 1st Qu.: 7 1st Qu.: 0.4374 1st Qu.:-0.49511 1st Qu.: 90.54
#> Median :13 Median : 1.1271 Median : 0.04625 Median :104.13
#> Mean :13 Mean : 1.2665 Mean : 0.09926 Mean :105.41
#> 3rd Qu.:19 3rd Qu.: 1.7190 3rd Qu.: 0.71868 3rd Qu.:126.31
#> Max. :25 Max. : 3.5944 Max. : 1.78492 Max. :168.22A pdf of the results from gyrationRad() can be plotted
with the plotPDF() function when the desc
parameter is set to “gyrationRad” (Figure V17).
Figure V17 Probability density function (pdf) plot of
gyration radius values for the
'tracks' dataset determined
with gyrationRad() default parameters. Plot created using
plotPDF() with desc="gyrationRad".
The entropy() function calculates track randomness based
on the fraction of data points from each track within each grid cell
(Figure V18). The resulting entropy scores are then normalised so
results can be compared between individuals. Note that if a track only
visits a single grid cell, normalised entropy cannot be calculated and
will return NaN; these values are excluded from visualisations.
entropy() requires a data frame with telemetry data (see
data formatting) and
includes two optional parameters:
gridCell: change grid cell size in degrees
(gridCell=0.25, by default), andhistPlot: output a histogram
(histPlot=TRUE, by default).entropy() outputs a data frame with four columns,
including:
Figure V18 Histogram of normalised entropy scores for
'tracks' dataset created using entropy()
default parameters.
# Summarise entropy results
summary(Ent)
#> ref normalisedEntropy indivEntropy cellsVisited
#> Min. : 1 Min. :0.8637 Min. :2.942 Min. :27.00
#> 1st Qu.: 7 1st Qu.:0.8984 1st Qu.:3.277 1st Qu.:39.00
#> Median :13 Median :0.9142 Median :3.708 Median :59.00
#> Mean :13 Mean :0.9082 Mean :3.621 Mean :57.32
#> 3rd Qu.:19 3rd Qu.:0.9202 3rd Qu.:3.889 3rd Qu.:71.00
#> Max. :25 Max. :0.9256 Max. :4.189 Max. :94.00A pdf of the results from entropy() can be plotted with
the plotPDF() function when the desc parameter
is set to “entropy” (Figure V19).
Figure V19 Probability density function (pdf) plot of
normalised entropy scores for
'tracks' dataset determined
with entropy() default parameters. Plot created using
plotPDF() with desc="entropy".
The predictability() function calculates the limit of
predictability for each track based on their individual entropy scores
(Figure V20).
predictability() requires a data frame with telemetry
data (see data
formatting) and a data frame of results output from
entropy(), and includes two optional parameters:
startVal: Optional starting value used to find a root
value for the limit of predictability equation. If NULL (default), the
starting value is automatically determined from the normalised entropy
for each individual. The function will iteratively decrease the starting
value by 0.01 until an acceptable root within (0,1) is found.histPlot: output a histogram
(histPlot=TRUE, by default).predictability() outputs a data frame of results with
two columns, including:
# Track predictability using predictability() default parameters and the output from entropy()
Pred <- predictability(tracks, Ent)
Figure V20 Histogram of predictability scores for
'tracks' dataset determined using
predictability() default parameters and entropy scores from
entropy().
# Summarize predictability scores
summary(Pred)
#> ref predictability
#> Min. : 1 Min. :0.1798
#> 1st Qu.: 7 1st Qu.:0.1992
#> Median :13 Median :0.2058
#> Mean :13 Mean :0.2217
#> 3rd Qu.:19 3rd Qu.:0.2420
#> Max. :25 Max. :0.3002A pdf of the results from predictability() can be
plotted with the plotPDF() function when the
desc parameter is set to “predictability” (Figure V21).
# Create a pdf plot of the predictability scores
pdf.pred <- plotPDF(Pred$predictability, desc="predictability")
Figure V21 Probability density function (pdf) plot of
predictability scores for
'tracks' dataset determined with
predictability() default parameters and results from
entropy(). Plot created using plotPDF() with
desc="predictability".
Burnham, K.P. & Anderson, D.R. (2004) Multimodel Inference: Understanding AIC and BIC in Model Selection. Sociological Methods & Research, 33, 261-304.
Calich, H.J. et al. (2021) Comprehensive analytical approaches reveal species-specific search strategies in sympatric apex predatory sharks. Ecography, 44, 1544-1556.
Farage, C. et al. (2021) Identifying flow modules in ecological networks using Infomap. Methods in Ecology and Evolution, 12, 778–786.
Méndez, V., et al. (2013). Stochastic Foundations in Movement Ecology: Anomalous Diffusion, Front Propagation and Random Searches. Berlin, Heidelberg, Germany, Springer Berlin / Heidelberg.
Rodríguez, J.P. et al. (2017) Big data analyses reveal patterns and drivers of the movements of southern elephant seals. Scientific Reports, 7, 1-10.
Viswanathan, G. M., et al. (2011). The Physics of Foraging: An Introduction to Biological Encounters and Random Searches. Cambridge, Cambridge University Press.
Wickham, H. (2016) ggplot2: Elegant Graphics for Data Analysis. Springer-Verlag, New York.