| state_to_trajectory {ecoregime} | R Documentation |
Position of a state with respect to a trajectory
Description
Define the position of a state with respect to a reference trajectory based on its distance from the trajectory and the length and direction of the trajectory.
Usage
state_to_trajectory(
d,
trajectories,
states,
target_states,
reference,
method,
coordStates = NULL
)
Arguments
d |
Either a symmetric matrix or an object of class |
trajectories |
Vector indicating the trajectory or site to which each
state in |
states |
Vector of integers indicating the order of the states in |
target_states |
Vector of integers indicating the indices in |
reference |
Vector of the same class of |
method |
Method to calculate the distance and relative position of the
|
coordStates |
Matrix containing the coordinates of each state (rows) and axis (columns) of a metric ordination space (see Details) |
Details
state_to_trajectory() can calculate the distance and relative position of
one or more target_states relative to a reference trajectory by three
different methods:
-
"nearest_state"returns the dissimilarity of thetarget_statesto the nearest state of thereferencetrajectory (distance) and calculates the relative position of the nearest state within thereference. -
"projection"returns the dissimilarity of thetarget_statesto their projection onto thereferencetrajectory and calculates the relative position of the projected state within thereference. This method requiresdto be metric (i.e. to satisfy the triangle inequality). Ifdis not metric,state_to_trajectory()calculates the Euclidean distance within a transformed space generated through multidimensional scaling (Borg and Groenen, 2005). To use the state coordinates in a different metric space, use thecoordStatesargument. When thetarget_statescannot be projected onto any of the segments forming thereferencetrajectory,state_to_trajectory()returnsNAfor bothdistanceandrelative_position. -
"mixed"calculates the dissimilarity between thetarget_statesand thereferencetrajectory, as well as their relative position by computing its projection onto any of the segments of the reference (analogous tomethod = "projection"). For thetarget_statesthat cannot be projected,state_to_trajectory()uses the nearest state in thereferenceto computedistanceandrelative_position(analogous tomethod = "nearest_state").
Value
The function state_to_trajectory() returns a data frame of four columns
including the distance and relative_position between the target_state and
the reference.
Depending on the
method,distanceis calculated as the dissimilarity between thetarget_statesand their respective nearest state in thereferenceor the dissimilarity to their projections onto thereference.The
relative_positionis a value that ranges between 0 (if the nearest state or projected point coincides with the firstreferencestate) and 1 (if the nearest state or projected point coincides with the lastreferencestate).
Author(s)
Martina Sánchez-Pinillos
Examples
# State dissimilarities
d <- vegan::vegdist(EDR_data$EDR3$abundance[, paste0("sp", 1:12)], method = "bray")
trajectories <- EDR_data$EDR3$abundance$traj
states <- EDR_data$EDR3$abundance$state
# Calculate the representative trajectories of an EDR to be used as reference
RT <- retra_edr(d,
trajectories = trajectories,
states = states,
minSegs = 10)
# Define the target states
target_states <- as.integer(c(1, 16, 55))
# Calculate the position of the target states with respect to the representative
# trajectories of an EDR
state_to_trajectory(d, trajectories = trajectories,
states = states,
target_states = target_states,
reference = RT,
method = "nearest_state")