Science Score: 46.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
○.zenodo.json file
-
✓DOI references
Found 1 DOI reference(s) in README -
✓Academic publication links
Links to: acm.org -
✓Committers with academic emails
1 of 5 committers (20.0%) from academic institutions -
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.2%) to scientific vocabulary
Keywords
Repository
uniform samplers from immersed manifolds
Basic Info
- Host: GitHub
- Owner: tdaverse
- License: gpl-3.0
- Language: R
- Default Branch: main
- Homepage: https://tdaverse.github.io/tdaunif/
- Size: 17.2 MB
Statistics
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 9
- Releases: 1
Topics
Metadata Files
README.md
tdaunif: Uniform manifold samplers for topological data analysis
This R package contains sampling functions for topological manifolds embedded (or immersed) in Euclidean space.
motivation
consolidation
Statistical topology and topological data analysis include a variety of methods for detecting topological structure from point cloud data sets, most famously persistent homology. (See Weinberger (2011) for a brief introduction.) These methods are often validated by applying them to point clouds sampled from spaces with known topology. Functions that generate such samples are therefore valuable to developers of topological–statistical software.
Such samplers have not been easy to find in the R package ecosystem. Handfuls exist in several different packages, but no single package or code repository has assembled a large collection for convenient use. That is the goal of this package.
uniformity
The simplest validations use points sampled uniformly from the surfaces
of manifolds embedded in Euclidean space. Uniformity here is with
respect to the surface area of the embedded manifold, but such uniform
sampling is not trivial to do when the manifold can only be expressed
via parameterization from a simpler parameter space, as when a square
is rolled and bent into a
torus. Uniform sampling
on the parameter space may then produce uneven sampling on the manifold,
regions of greater compression being oversampled relative to regions of
greater expansion. One especially important motivation for this package
is therefore to include uniform samplers for popular embeddings of
topological manifolds, including functions that allow users to build
their own with minimal effort (see
help(manifold, package = "tdaunif")).
usage
installation
The latest release of tdaunif can be installed from CRAN:
r
install.packages("tdaunif")
You can install the current development version of tdaunif from GitHub using the remotes package:
r
remotes::install_github("tdaverse/tdaunif", build_vignettes = TRUE)
To stabilize this document, this chunk saves the default graphics settings (as required by CRAN) and initializes the random number generator:
r
oldpar <- par(no.readonly = TRUE)
set.seed(0)
illustration
An intuitive embedding of the Klein bottle into 4-space is adapted from the popular “donut” embedding of the torus in 3-space. In tdaunif this is called the “tube” parameterization. We can sample uniformly from this embedding (without noise) and examine the coordinate projections as follows:
r
x <- sample_klein_tube(n = 360, ar = 3, sd = 0)
pairs(x, asp = 1, pch = 19, cex = .5)
<!-- -->
Compare these neat projections to those of the same sample with noise added in the ambient Euclidean space:
r
x <- add_noise(x, sd = .2)
pairs(x, asp = 1, pch = 19, cex = .5)
<!-- -->
For a thorough discussion of this sampler, see my blog post describing the method presented in Diaconis, Holmes, and Shahshahani (2013).
another illustration
A subset of samplers allow stratified sampling, which relies on an analytic solution to the problem of length or area distortion created by most parameterizations. For example, the planar triangle sampler can be stratified to produce a more uniform arrangement of points than a properly uniform sample would produce:
r
equilateral <- cbind(c(0,0), c(0.5,sqrt(3)/2), c(1,0))
x <- sample_triangle_planar(n = 720, triangle = equilateral)
y <- sample_triangle_planar(n = 720, triangle = equilateral, bins = 24)
par(mfrow = c(1L, 2L))
plot(x, asp = 1, pch = 19, cex = .5)
plot(y, asp = 1, pch = 19, cex = .5)
<!-- -->
See Arvo (1995) and Arvo’s notes from Siggraph 2001 for a detailed treatment of this technique.
r
par(oldpar)
Owner
- Name: tdaverse
- Login: tdaverse
- Kind: organization
- Website: https://github.com/tdaverse/tdaverse
- Repositories: 4
- Profile: https://github.com/tdaverse
an inceptive R package collection for computational topology and topological data analysis
GitHub Events
Total
Last Year
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| corybrunson | c****d@g****m | 83 |
| 20demkowiczbr | 2****r@f****g | 36 |
| 20choudharysa | 2****a@f****g | 17 |
| corybrunson | j****o@v****u | 7 |
| Raoul | r****w | 1 |
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 18
- Total pull requests: 13
- Average time to close issues: 2 months
- Average time to close pull requests: about 16 hours
- Total issue authors: 3
- Total pull request authors: 3
- Average comments per issue: 0.56
- Average comments per pull request: 2.0
- Merged pull requests: 13
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- corybrunson (14)
- 20demkowiczbr (3)
- peekxc (1)
Pull Request Authors
- 20demkowiczbr (11)
- 20choudharysa (1)
- rrrlw (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- cran 200 last-month
- Total dependent packages: 0
- Total dependent repositories: 1
- Total versions: 3
- Total maintainers: 1
cran.r-project.org: tdaunif
Uniform Manifold Samplers for Topological Data Analysis
- Homepage: https://tdaverse.github.io/tdaunif/
- Documentation: http://cran.r-project.org/web/packages/tdaunif/tdaunif.pdf
- License: GPL-3
-
Latest release: 0.2.0
published over 1 year ago
Rankings
Maintainers (1)
Dependencies
- R >= 3.3.0 depends
- knitr * suggests
- rmarkdown * suggests
- testthat * suggests
- vdiffr >= 0.2 suggests