Learn R Programming

⚠️There's a newer version (1.3.0) of this package.Take me there.

Jump to installation instructions

actel

of non-interactive code*

Read the latest news here!

Overview

If you are using acoustic telemetry to track animals as they move inside a study area or as they migrate somewhere, actel is the package for you. By bringing together the study area configuration and the recorded detections, actel provides a systematic way of analysing fish migration and residency data.

Main functions:

1. explore()

explore() allows you to quickly get a summary of your data. You can use explore() to get a general feel for the study results, and check if the input files are behaving as expected. It is also a good candidate if you just want to validate your detections for later use in other analyses.

2. migration()

The migration() analysis runs the same initial checks as explore(), but on top of it, it analyses the fish behaviour. By selecting the arrays that lead to success, you can define whether or not your fish survived the migration. Additional plots help you find out if some fish has been acting odd. Multiple options allow you to tweak the analysis to fit your study perfectly.

3. residency()

The residency() analysis runs the same initial checks as explore(), but, similarly to migration, explores particular points of the fish behaviour. If you want to know where your fish were in each day of the study, how many fish were in each section each day, and other residency-focused variables, this is the analysis you are looking for!

Unlock actel's full potential

To truly learn how to operate actel, you must read the package vignettes. These have been arranged so that you can prepare your analysis as you learn; quite soon you will get your first results!

Here are some examples:

Movement tables:

ArrayDetectionsFirst stationLast stationFirst timeLast timeTime travellingTime on array
River114St.1St.22019-05-15 10:30:002019-05-15 13:00:00NA3:30
River23St.4St.42019-05-15 13:50:002019-05-15 14:40:000:500:50
River38St.5St.62019-05-15 16:00:002019-05-15 16:20:001:200:20
Fjord221St.10St.112019-05-16 15:10:002019-05-16 18:00:0022:502:50
Sea11St.18St.182019-05-18 09:45:002019-05-18 09:45:0015:450:00

Detection graphics

Times of arrival and summary information

Array efficiency and fish progression

Individual residency

Global residency

Installing actel

CRAN version: 1.0.0

actel is available on CRAN. To install the latest stable version, simply run:

install.packages("actel")

Development version

If you would like to install the latest updates (which have not been integrated to CRAN yet), you can run the line below. Note that you need to have the package remotes installed!

remotes::install_github("hugomflavio/actel", build_opts = c("--no-resave-data", "--no-manual"), build_vignettes = TRUE)

Have a look at the manual:

After installing, you should read the package vignettes (i.e. the manual), which can be found by running:

browseVignettes("actel")

Note:

  1. If the vignettes are not showing up with the command above, you can download them directly here: actel_vignettes.zip
  2. If you are getting "pandoc document conversion" errors during the package installation, try installing the newest version of pandoc, restarting R and trying again.

* interactive code (i.e. code that expects user input) cannot be tested automatically using codecov and, as such, was excluded from the codecov scope.

Copy Link

Version

Install

install.packages('actel')

Monthly Downloads

458

Version

1.1.0

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Hugo Fl<c3><a1>vio

Last Published

August 1st, 2020

Functions in actel (1.1.0)

assembleGroupCJS

Assembles CJS tables for all groups
advEfficiency

Calculate beta estimations for efficiency
assembleResidency

Collect summary information for the residency analysis
assembleSectionOverview

Create section.overview
assembleMatrices

Assemble detection matrices
assembleOutput

Create status.df
assembleArrayCJS

Combine the individual CJS's of each array into a single table
appendTo

Append to ...
actel

actel: Acoustic Telemetry Data Analysis
actel-deprecated

Deprecated functions in package actel.
checkDeploymentTimes

Confirm that receivers were not re-deployed before being retrieved
checkDetectionsBeforeRelease

Check if there are detections for the target tags before release.
checkLinearity

Check that the fish linearly moved along the sections
checkMinimumN

Check that the fish have enough detections to be valid
checkArguments

Check argument quality
checkInactiveness

Find if a fish is standing still in an array
checkSpeeds

check fish speeds against defined thresholds (in m/s)
checkSMovesN

Verify number of detections in section movements
blameArrays

Find which arrays to blame for a jump in movement events
checkDeploymentStations

Confirm that the station names in the deployments table match those listed in the spatial file
breakMatricesByArray

Break the detection matrices per array
countBackMoves

Count backwards movements
collectStrays

Collect summary information on the tags detected but that are not part of the study.
cjs_args

CJS.R arguments
countArrayFailures

Find and list arrays which failed during the movements of the fish
dailyRatios

calculate daily ratios per fish
combine

Combine a list of vectors
checkJumpDistance

Check if fish are jumping over arrays
circularSection

Draw a section on the outside of the circle
check_args

check.R arguments
checkUnknownReceivers

Find detections from unknown receivers
dailyRatiosIndOut

compile output of dailyRatios
completeMatrix

Complete a Distances Matrix
efficiencyMatrix

Compile inter-array detection matrix
checkUpstream

Check for movements upstream of the release site.
compileDetections

Combine ALS detections
example.deployments

Example deployment data
copyOfCirclePlotRad

circular:::circlePlotRad
assembleSplitCJS

Assembles CJS tables for all group x release site combinations
example.detections

Example detection data
emergencyBreak

Standard procedure when aborting
checkDupSignals

Check if there are duplicated signals in the detected tags.
deleteHelpers

Delete temporary files
checkDupDetections

Check if there are duplicated detection in the input data
combineCJS

Combine multiple CJS models
getDualMatrices

Prepare intra-array matrices for selected arrays
getResidency

Assemble residency tables per fish
checkNoDetections

Check if there are detections matching the target tags.
fact

nearsq helper
assembleTimetable

Create the timetable
dataToList

Import RData in a list format
convertCodes

Convert code spaces
checkImpassables

Find out if a fish moved in an impossible direction
checkGUI

Check if the dependencies required to open a GUI are installed, and if opening a GUI does not throw an error. Some code adapted from RGtk2's .onLoad function.
emptyMatrix

Create a Template Distances Matrix
decimalTime

Convert hh:mm:ss time to hh.hhh
convertTimes

Convert Times
findDirectChains

Find all arrays linked to an array in a given direction
includeUnknownReceiver

Temporarily include missing receivers in the spatial object
example.biometrics

Example biometric data
checkTagsInUnknownReceivers

Check for target data in the unknown receivers
createWorkspace

Create a Default Workspace
createUniqueSerials

Include the deployment in the serial number of the receive
checkReport

Check report compatibility
copyOfRosediagRad

circular:::RosediagRad
createStandards

Standardize serial numbers, stations and arrays in the detections
dailyPositions

Find the location where the fish spent most time per day
extractCodeSpaces

Extract Code Spaces from transmitter names
discardFirst

Discard early detections
checkToken

Verify that the source data has been compiled using actel's preload function
dotMatrix

Create numerical distances between dot elements
invalidateEvents

Allow the user to determine a given movement event invalid
extractSignals

Extract signals from transmitter names
movementSpeeds

Calculate time and speed
minuteTime

Convert numeric time to HH:MM
movementTimes

Calculate movement times
myRoseDiag

Edited rose diagram function
printCircular

Print circular graphics for each array
printDot

Print DOT diagram
printProgression

Print progression diagram
printMigrationRmd

Print Rmd report
dualArrayCJS

Calculate estimated last-array efficiency
explore

Explorative Analysis
loadBio

Load Biometrics file
distancesMatrix

Calculate Distances Matrix
simpleCJS

Analytical CJS model
getSpeeds

Extract speeds from the analysis results.
dotList

Break the dot data frame into a list
ringsRel

Draw rings at relative points
excludeTags

Collect summary information on the tags detected but that are not part of the study.
roseMean

Draw mean value in the axis margin
simplifyMovements

Removes invalid events
dualMatrix

Compile detection matrix for last array
example.results

Example migration results
dotPaths

Find arrays valid for efficiency calculation
example.distances

Example distances matrix
example.spatial

Example spatial data
loadShape

Load shapefile and convert to a raster object.
loadDetections

Load ALS detections
loadDot

Load spatial.dot
gg_colour_hue

Generate default ggplot colours
globalRatios

Calculate number/percentage of fish at each location for each day
loadDistances

Load distances matrix
findShortestChains

Find the shortest paths between arrays
exampleWorkspace

Deploy Example Data
loadDeployments

Load deployments file and Check the structure
findPeers

Find efficiency peers for each array
findSecondsPerSection

Calculate number of seconds at each location per day
firstArrayFailure

Determine if the first array after release has failed
matchl

TRUE/FALSE wrapper for match
graphicalInvalidate

Opens a new window that allows the user to determine movement event invalidity
mbGroupCJS

Calculate CJS for each group for each array
getTimes

Extract timestamps from the analysis results.
includeMissing

Include fish that were never detected
includeIntraArrayEstimates

Incorporate intra-array estimates in the overall CJS object
loadSpatial

Load Spatial File
oneWayMoves

Trim movements table to contain only uni-directional movements
loadStudyData

Load, structure and check the inputs
stripCodeSpaces-deprecated

Remove Code Spaces from transmitter names
na.as.false

Consider NA's as FALSE
groupMovements

Group movements
substrRight

Subset a character string counting from the right end
printSectionTimes

Print arrival and departure times per section
printResidencyRmd

Print Rmd report
mbSplitCJS

Calculate CJS for each group.release combination
plotMoves

Plot detections for a single tag
migration

Migration Analysis
preload

Load a dataset before running an analysis
preloadDetections

Run quality checks on preloaded detections
plotTimes

Print circular graphics for time series.
printDotplots

Print dotplots
printIndividuals

Print individual graphics
printIndividualResidency

print the individual locations per day
printSensorData

Print sensor data for each individual tag
printSurvivalGraphic

Print survival graphic
res_efficiency

Calculate array efficiency for residency analysis
residency

Residency Analysis
speedReleaseToFirst

Calculate time and speed since release.
overrideValidityChecks

Skips all validity checks for a fish and allows the user to freely invalidate events
validateDetections

Compare original detections with the valid movements and exclude invalid detections
userInput

Wrap frequently used code to handle user input
printGlobalRatios

print the distribution of fish per location
processStandardFile

Standard detections file created for actel
printExploreRmd

Print Rmd report
processThelmaOldFile

Thelma old export files
processThelmaNewFile

Thelma new export files
printEfficiency

Print efficiency fragment
splitDetections

Split detections by tag
nearsq

Find optimum plotting grid
tableInteraction

Handler for table interaction events
printArrayOverview

print Rmd fragment for inclusion in the report
timesToCircular

Convert a data frame with timestamps into a list of circular objects
readDot

Read dot file or string
printLastArray

Print a simple barplot with the number of fish last seen at each section
printLastSection

Print a simple barplot with the number of fish last seen at each section
printBiometrics

Print biometric graphics
vectorsIntoTables

Transform vectors into data frames with specific columns
roundDown

Forcefully round a number down
res_assembleOutput

Create status.df
storeStrays

Store summary information on the stray tags detected in a permanent file.
roundUp

Forcefully round a number up
stopAndReport

stop function but paste error to the report too
stationName

Find original station name
sectionMovements

Compress array-movements into section-movements
setSpatialStandards

Create Standard Names for spatial elements
processVemcoFile

Vemco files
transferValidity

Transfer validity updates from valid movements to all movements
std.error.circular

Calculate the standard error of the mean for circular data
transformSpatial

Process spatial elements
transitionLayer

Calculate Transition Layer
updateValidity

update array-movement validity based on the section-movements