This package aims to provide a user-friendly TDA application. Although many TDA libraries, such as Dionysus, PHAT, and GUDHI, have been developed in Python and C++, I believe it would be valuable to implement simplicial complex functionality in R, making it compatible with the wide range of statistical methods available in R.
Example code
# Get its' simplices by specific epsilon
<- matrix(c(0, 1, 1, 0, 0, 0, 1, 1), ncol = 2)
points <- 1.5
epsilon <- VietorisRipsComplex(points, epsilon)
vr_complex
# You can find its' topology feature by using these functions
faces(vr_complex$simplices, target_dim=1)
boundary(vr_complex$simplices, 1)
betti_number(vr_complex$simplices, 1, tol=0.1)
euler_characteristic(simplices, tol=0.1)
abstract_simplicial_complex(simplices, 2)
# Plot the Vietoris-rips complex
plot(
$network,
vr_complexlayout = points,
vertex.label = 1:nrow(points),
vertex.size = 12,
edge.arrow.mode = 0,
asp = 1
)
# Filtration, Boundary reduction, and Persistence informations
<- build_vr_filtration(points, eps_max=1.2)
F <- boundary_info(F)
res <- extract_persistence_pairs(F, res$last_1, res$pivot_owner)
pairs plot_persistence(pairs)
Playground
Try this playground
to get familier with all of the concept that will be used in TDA.