Skip to main content

Dimension reduction with Eilenberg-MacClane coordinates

Project description


Dimension Reduction with Eilenberg-MacLane Coordinates

Chris Tralie, Tom Mease, Jose Perea

DREiMac is a library for topological data coordinatization, visualization and dimensionality reduction. It leverages Eilenberg-MacLane spaces, and turns persistent cohomology computations into topology-preserving coordinates for data.

TO USE: interactively select persistent cohomlogy classes, parameters, and DREiMac will compute maps from the data to appropriate (low-dimensional skeleta of Eilenberg-MacLane) spaces consistent with the underlying data topology.

Python version

Code can be found in dreimac/. If you're using conda and would like to create a virtual environment first, type

conda create -n dreimac python=3.9
conda activate dreimac

Then, to install, type

git clone
cd DREiMac
pip install -e .

Then, you can import dreimac from any python file or notebook. For example, if you type the following from the root of the repository

cd notebooks
jupyter notebook

then you will be able to interactively explore the notebooks we have setup

Javascript version

Code can be found in dreimacjs/ CircluarCoords.html and ripser.html are the entry points

Emscripten Compile options

emcc --bind -s ALLOW_MEMORY_GROWTH=1 -O3 ripser.cpp

MIME Types

  • MIME Types for Javascript files should be text/javascript
  • MIME Types for wasm files should be application/wasm

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dreimac-0.1.tar.gz (14.4 kB view hashes)

Uploaded source

Built Distributions

dreimac-0.1-py3.7.egg (32.7 kB view hashes)

Uploaded 0 1

dreimac-0.1-py3-none-any.whl (19.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page