Function
dynamicVariation
assesses the amount of dynamic variation observed across trajectories and the relative contribution of each of them.Function
variationDecomposition
performs a sum of squares decomposition of total variation in three components: (1) across trajectories (entities); (2) across time points; (3) their interaction.
Arguments
- x
An object of class
trajectories
(or its children subclassesfd.trajectories
orcycles
).- ...
Additional params to be passed to function
trajectoryDistances
.
Value
Function
dynamicVariance
returns a list with three elements (dynamic sum of squares, dynamic variance and a vector of trajectory relative contributions)Function
variationDecomposition
returns a data frame with results (sum of squares, degrees of freedom and variance estimates) for each variance component and the total.
Details
Function variationDecomposition
requires trajectories to be synchronous. The SS sum of temporal
and interaction
components correspond to the SS sum, across trajectories, of
function trajectoryInternalVariation
.
Examples
#Description of entities and surveys
entities <- c("1","1","1","1","2","2","2","2","3","3","3","3")
surveys <- c(1,2,3,4,1,2,3,4,1,2,3,4)
#Raw data table
xy<-matrix(0, nrow=12, ncol=2)
xy[2,2]<-1
xy[3,2]<-2
xy[4,2]<-3
xy[5:6,2] <- xy[1:2,2]
xy[7,2]<-1.5
xy[8,2]<-2.0
xy[5:6,1] <- 0.25
xy[7,1]<-0.5
xy[8,1]<-1.0
xy[9:10,1] <- xy[5:6,1]+0.25
xy[11,1] <- 1.0
xy[12,1] <-1.5
xy[9:10,2] <- xy[5:6,2]
xy[11:12,2]<-c(1.25,1.0)
d <- dist(xy)
# Defines trajectories
x <- defineTrajectories(d, entities, surveys)
# Assessment of dynamic variation and individual trajectory contributions
dynamicVariation(x)
#> $dynamic_ss
#> [1] 0.7114251
#>
#> $dynamic_variance
#> [1] 0.3557125
#>
#> $relative_contributions
#> 1 2 3
#> 0.51366204 0.06351261 0.42282535
#>
# Variation decomposition (entity, temporal and interaction) for synchronous
# trajectories:
variationDecomposition(x)
#> ss df variance
#> entities 2.489583 2 1.2447917
#> time 7.453125 3 2.4843750
#> interaction 1.718750 6 0.2864583
#> total 11.661458 11 1.0601326
# check the correspondence with internal variation
sum(variationDecomposition(x)[c("time", "interaction"),"ss"])
#> [1] 9.171875
sum(trajectoryInternalVariation(x)$internal_ss)
#> [1] 9.171875