Kepler Mapper
Kepler Mapper: A flexible Python implementation of the Mapper algorithm. - Published in JOSS (2019)
Science Score: 95.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
Found .zenodo.json file -
✓DOI references
Found 7 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org, zenodo.org -
✓Committers with academic emails
1 of 29 committers (3.4%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Keywords
Keywords from Contributors
Scientific Fields
Repository
Kepler Mapper: A flexible Python implementation of the Mapper algorithm.
Basic Info
- Host: GitHub
- Owner: scikit-tda
- License: mit
- Language: Python
- Default Branch: master
- Homepage: https://kepler-mapper.scikit-tda.org
- Size: 47.1 MB
Statistics
- Stars: 642
- Watchers: 40
- Forks: 183
- Open Issues: 33
- Releases: 14
Topics
Metadata Files
README.md
KeplerMapper 
Nature uses as little as possible of anything. - Johannes Kepler
This is a Python implementation of the TDA Mapper algorithm for visualization of high-dimensional data. For complete documentation, see https://kepler-mapper.scikit-tda.org.
KeplerMapper employs approaches based on the Mapper algorithm (Singh et al.) as first described in the paper "Topological Methods for the Analysis of High Dimensional Data Sets and 3D Object Recognition".
KeplerMapper can make use of Scikit-Learn API compatible cluster and scaling algorithms.
Install
Dependencies
KeplerMapper requires:
- Python (>= 3.6)
- NumPy
- Scikit-learn
Using the plotly visualizations requires a few extra libraries:
- igraph
- Plotly
- Ipywidgets
Additionally, running some of the examples requires:
- matplotlib
- umap-learn
Installation
Install KeplerMapper with pip:
pip install kmapper
To install from source:
git clone https://github.com/MLWave/kepler-mapper
cd kepler-mapper
pip install -e .
Usage
KeplerMapper adopts the scikit-learn API as much as possible, so it should feel very familiar to anyone who has used these libraries.
Python code
```python
Import the class
import kmapper as km
Some sample data
from sklearn import datasets data, labels = datasets.makecircles(nsamples=5000, noise=0.03, factor=0.3)
Initialize
mapper = km.KeplerMapper(verbose=1)
Fit to and transform the data
projecteddata = mapper.fittransform(data, projection=[0,1]) # X-Y axis
Create dictionary called 'graph' with nodes, edges and meta-information
graph = mapper.map(projecteddata, data, cover=km.Cover(ncubes=10))
Visualize it
mapper.visualize(graph, pathhtml="makecircleskeplermapperoutput.html", title="makecircles(nsamples=5000, noise=0.03, factor=0.3)") ```
Disclaimer
Standard MIT disclaimer applies, see DISCLAIMER.md for full text. Development status is Alpha.
How to cite
To credit KeplerMapper in your work: https://kepler-mapper.scikit-tda.org/en/latest/#citations
Owner
- Name: Scikit-TDA
- Login: scikit-tda
- Kind: organization
- Website: scikit-tda.org
- Repositories: 11
- Profile: https://github.com/scikit-tda
Topological Data Analysis for the Python ecosystem.
JOSS Publication
Kepler Mapper: A flexible Python implementation of the Mapper algorithm.
Authors
Nubank
Tags
Mapper Topological Data AnalysisGitHub Events
Total
- Issues event: 1
- Watch event: 16
- Issue comment event: 1
- Pull request event: 1
- Fork event: 3
- Create event: 2
Last Year
- Issues event: 1
- Watch event: 16
- Issue comment event: 1
- Pull request event: 1
- Fork event: 3
- Create event: 2
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Nathaniel Saul | n****t@s****m | 263 |
| Dave Eargle | d****e@d****m | 56 |
| MLWave | p****t@g****m | 46 |
| MLWave | i****o@m****m | 26 |
| Lee Steinberg | l****4@s****m | 20 |
| MLWave | h****n@H****l | 18 |
| Gabriel Altay | g****l@k****m | 9 |
| Gabriel | g****y@g****m | 6 |
| Sam Mangham | m****m@g****m | 6 |
| Ethan Rooke | e****n@r****e | 5 |
| Chris M | y****u@e****m | 3 |
| Leonardo Uieda | l****a@g****m | 3 |
| Michael Catanzaro | c****j@p****e | 3 |
| Emerson Escolar | 3****r | 2 |
| gabriel | g****d@g****m | 2 |
| christian parsons | c****s@g****m | 2 |
| Mikael Vejdemo-Johansson | m****l@j****g | 2 |
| Math & Python | e****r@g****m | 2 |
| Karin Sasaki | k****1@g****m | 2 |
| Mikael Vejdemo-Johansson | m****e@g****m | 2 |
| A. Rygin | 4****e | 1 |
| Mohamed Zahran | m****1@g****m | 1 |
| Nathaniel Saul | n****l@p****v | 1 |
| Mark Hale | m****e@p****g | 1 |
| Nathaniel Saul | n****t@r****m | 1 |
| PEP8 Speaks | p****s@g****m | 1 |
| PJ Trainor | t****j@g****m | 1 |
| Roj | j****v@l****m | 1 |
| Tor Erik Larsen | t****s@p****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 59
- Total pull requests: 52
- Average time to close issues: 10 months
- Average time to close pull requests: 20 days
- Total issue authors: 39
- Total pull request authors: 16
- Average comments per issue: 3.49
- Average comments per pull request: 3.48
- Merged pull requests: 42
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 1
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 1
- Pull request authors: 0
- Average comments per issue: 1.0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- deargle (6)
- karinsasaki (5)
- sauln (4)
- erooke (3)
- mlnjsh (3)
- MLWave (2)
- yanuarkrisna (2)
- holmbuar (2)
- andreacortis (2)
- retdop (1)
- el-burrito1 (1)
- cmottac (1)
- FlorianLeRoyKili (1)
- mhmism (1)
- xgao32 (1)
Pull Request Authors
- deargle (19)
- sauln (11)
- catanzaromj (5)
- erooke (4)
- pulquero (3)
- wingenium-nagesh (2)
- ulriks9 (2)
- blue-j (2)
- galtay (2)
- justin5927 (1)
- cmorph1 (1)
- leemojiang (1)
- MandaloreUltimate (1)
- wjdrlduq1234 (1)
- dependabot[bot] (1)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- scikit-learn *
- actions/checkout v4 composite
- actions/download-artifact v4 composite
- actions/upload-artifact v4 composite
- pypa/gh-action-pypi-publish release/v1 composite
- actions/checkout v4 composite
- actions/setup-python v5 composite
