A fast parallelized alternative to R's native 'dist' function to
calculate distance matrices for continuous, binary, and multi-dimensional
input matrices, which supports a broad variety of 39 predefined distance
functions from the 'stats', 'proxy' and 'dtw' R packages, as well as user-
defined functions written in C++. For ease of use, the 'parDist' function
extends the signature of the 'dist' function and uses the same parameter
naming conventions as distance methods of existing R packages. The package
is mainly implemented in C++ and leverages the 'RcppParallel' package to
parallelize the distance computations with the help of the 'TinyThread'
library. Furthermore, the 'Armadillo' linear algebra library is used for
optimized matrix operations during distance calculations. The curiously
recurring template pattern (CRTP) technique is applied to avoid virtual
functions, which improves the Dynamic Time Warping calculations while
the implementation stays flexible enough to support different DTW step
patterns and normalization methods.
dtw, ggplot2, proxy, highlight, testthat, RcppArmadillo,
RcppXPtrUtils

dtw, ggplot2, proxy, testthat, RcppArmadillo, RcppXPtrUtils

Alexander Eckert [aut, cre],
Lucas Godoy [ctb],
Srikanth KS [ctb]
c(
person("Alexander", "Eckert", role = c("aut", "cre"), email = "info@alexandereckert.com"),
person("Lucas", "Godoy", role = "ctb", email = "lucasdac.godoy@gmail.com"),
person("Srikanth", "KS", role = "ctb", email = "sri.teach@gmail.com")
)
A fast parallelized alternative to R's native 'dist' function to
calculate distance matrices for continuous, binary, and multi-dimensional
input matrices, which supports a broad variety of 41 predefined distance
functions from the 'stats', 'proxy' and 'dtw' R packages, as well as user-
defined functions written in C++. For ease of use, the 'parDist' function
extends the signature of the 'dist' function and uses the same parameter
naming conventions as distance methods of existing R packages. The package
is mainly implemented in C++ and leverages the 'RcppParallel' package to
parallelize the distance computations with the help of the 'TinyThread'
library. Furthermore, the 'Armadillo' linear algebra library is used for
optimized matrix operations during distance calculations. The curiously
recurring template pattern (CRTP) technique is applied to avoid virtual
functions, which improves the Dynamic Time Warping calculations while
the implementation stays flexible enough to support different DTW step
patterns and normalization methods.