Package: BallMapper 0.2.0

BallMapper: The Ball Mapper Algorithm

The core algorithm is described in "Ball mapper: a shape summary for topological data analysis" by Pawel Dlotko, (2019) <arxiv:1901.07410>. Please consult the following youtube video <https://www.youtube.com/watch?v=M9Dm1nl_zSQfor> the idea of functionality. Ball Mapper provide a topologically accurate summary of a data in a form of an abstract graph. To create it, please provide the coordinates of points (in the points array), values of a function of interest at those points (can be initialized randomly if you do not have it) and the value epsilon which is the radius of the ball in the Ball Mapper construction. It can be understood as the minimal resolution on which we use to create the model of the data.

Authors:Pawel Dlotko [aut, cre]

BallMapper_0.2.0.tar.gz
BallMapper_0.2.0.zip(r-4.5)BallMapper_0.2.0.zip(r-4.4)BallMapper_0.2.0.zip(r-4.3)
BallMapper_0.2.0.tgz(r-4.4-any)BallMapper_0.2.0.tgz(r-4.3-any)
BallMapper_0.2.0.tar.gz(r-4.5-noble)BallMapper_0.2.0.tar.gz(r-4.4-noble)
BallMapper_0.2.0.tgz(r-4.4-emscripten)BallMapper_0.2.0.tgz(r-4.3-emscripten)
BallMapper.pdf |BallMapper.html
BallMapper/json (API)

# Install 'BallMapper' in R:
install.packages('BallMapper', repos = c('https://pdlotko.r-universe.dev', 'https://cloud.r-project.org'))

Peer review:

On CRAN:

This package does not link to any Github/Gitlab/R-forge repository. No issue tracker or development information is available.

1.00 score 5 scripts 232 downloads 18 exports 63 dependencies

Last updated 5 years agofrom:a6e7221046. Checks:OK: 1 NOTE: 6. Indexed: yes.

TargetResultDate
Doc / VignettesOKNov 20 2024
R-4.5-winNOTENov 20 2024
R-4.5-linuxNOTENov 20 2024
R-4.4-winNOTENov 20 2024
R-4.4-macNOTENov 20 2024
R-4.3-winNOTENov 20 2024
R-4.3-macNOTENov 20 2024

Exports:BallMappercolor_by_distance_to_reference_pointscolorByAllVariablescolorByAverageValueOfOtherVariablecolorByStDevValueOfOtherVariablecoloredDynamicNetworkColorIgraphPlotcoordinates_of_points_in_subcollectionfind_dominant_difference_using_averagesfind_dominant_difference_using_averages_normalized_by_sdGrayscaleIgraphPlotnormalize_to_average_0_stdev_1normalize_to_min_0_max_1points_covered_by_landmarkspointToBallListreadBallMapperGraphFromFilesimpleDynamicNetworkstoreBallMapperGraphInFile

Dependencies:base64encbriobslibcachemcallrclicolorspacecpp11crayondescdiffobjdigestdotCall64evaluatefarverfastmapfieldsfontawesomefsgluehighrhtmltoolshtmlwidgetsigraphjquerylibjsonliteknitrlabelinglatticelifecyclemagrittrmapsMatrixmemoisemimemunsellnetworkD3pkgbuildpkgconfigpkgloadpraiseprocessxpsR6rappdirsRColorBrewerRcpprlangrmarkdownrprojrootsassscalesspamstringistringrtestthattinytexvctrsviridisLitewaldowithrxfunyaml

Readme and manuals

Help Manual

Help pageTopics
Create vertices and edges (with additional properties) of a Ball Mapper graph representation of the input data. Please be aware that the program will not perform any normalization on the data. As with cluster analysis we recommend that you consider whether to normalize the data prior to running the function.BallMapper
This function will provide a new coloring which is the minimal and average distance of points in the point cloud to the referece points. The output from this procedure can be used as an alternative coloring in BallMapper.color_by_distance_to_reference_points
Produce a collection of png files with mapper graphs colored by following coordinates (so that the number of files is the same as the number of coordinates).colorByAllVariables
Produce a new coloring vector being an average of values of given function at points covererd by each vertex of Ball Mapper graph.colorByAverageValueOfOtherVariable
Produce a new coloring vector being a standard deviation of values of given function at points covererd by each vertex of Ball Mapper graph.colorByStDevValueOfOtherVariable
This procedure produces a dynamic graph with colors. It allows zoom-in operation and displays information about vertices when they are clicked upon.coloredDynamicNetwork
Produce a static color visualization of the Ball Mapper graph. It is based on the output from BallMapper function.ColorIgraphPlot
This is an auxiliery function. It take the coordinates of points, ids of subset of points, and number of coordinate, and return a sorted vector of the given coodrinate in the considered points. For instance, given the collection of points: 1 2 3 4 5 6 7 8 9 and which_subset = 2,3 and number_of_coordinate = 2 the procedure below will return the vector [2,5,8].coordinates_of_points_in_subcollection
This procedure take two subset of points (that come from the vertices of Ball Mapper) and return the coordinates on which the averages of those two collections differs most. To ballance the effect of potentially different orders of magnitude of data in column, we divide the difference in means by the mean of the whole column.find_dominant_difference_using_averages
This procedure take two subset of points (that come from the vertices of Ball Mapper) and return the coordinates on which the averages of those two collections differs most. To ballance the effect of potentially different orders of magnitude of data in column, we divide the difference in means by the standard deviation of the whole column.find_dominant_difference_using_averages_normalized_by_sd
Produce a static grayscale visualization of the Ball Mapper graph. It is based on the output from the BallMapper function.GrayscaleIgraphPlot
This function normalize each column (variable) of the input dataset so that the the average of the normalized column is 0 and its standard deviation is 1.normalize_to_average_0_stdev_1
This function normalize each column (variable) of the input dataset so that the maximum is mapped to one, minimum to zero, and the intermediate values linearly to the appropriate points in the interval (0,1).normalize_to_min_0_max_1
This function returns a list of points covered by the given collection of landmarks.points_covered_by_landmarks
Produce a two column list. The first column contain the number of point (possibly with repetitions), the second one contains the number of landmark points that cover it. For example, let us assume that point 1 is covered by landmark 1 and 2, and point 2 is covered by the landmark 2. In this case the obtained list is of a form: 1 1 1 2 2 2 This list can be used for a further analysis of various parts of Ball Mapper graph.pointToBallList
This procedure read the BallMapper object from file. The parameter of the file is filename. We assume that files: filename_vertices filename_edges filename_edges_strength filename_points_covered_by_landmarks filename_landmarks filename_coloringreadBallMapperGraphFromFile
This is a simple example of dynamic visualization using networkD3 library. This version do not implement coloring of vertices, just give a general overview of the edges.simpleDynamicNetwork
This procedure store the Ball Mapper graph in a file in the following format:storeBallMapperGraphInFile