Metadata-Version: 2.1
Name: hypercluster
Version: 0.1.1
Summary: A package for automatic clustering hyperparameter optmization
Home-page: https://github.com/liliblu/hypercluster
Author: Lili Blumenberg, Ruggles Lab
Author-email: lili.blumenberg@gmail.com
License: UNKNOWN
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3.7
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS
Classifier: Operating System :: Unix
Description-Content-Type: text/markdown
Requires-Dist: pandas (>=0.24.2)
Requires-Dist: numpy (>=1.16.4)
Requires-Dist: scipy (>=1.2.1)
Requires-Dist: matplotlib (>=3.1.0)
Requires-Dist: seaborn (>=0.9.0)
Requires-Dist: scikit-learn (>=0.22.0)
Requires-Dist: hdbscan (>=0.8.24)
Requires-Dist: snakemake (>=5.8.2)

# Hypercluster
A package for clustering optimization with sklearn. 

### Requirements:  
pandas  
numpy  
scipy  
matplotlib  
seaborn  
scikit-learn  
hdbscan  

Optional:
snakemake


### Install  
```
pip install hypercluster
```
or
```
conda install -c bioconda hypercluster
```
Right now there are issue with the bioconda install on linux. Try the pip, if you are having problems. 

### Docs 
https://hypercluster.readthedocs.io/en/latest/index.html   

### Examples
https://github.com/liliblu/hypercluster/tree/dev/examples


### Quickstart example
```python
import pandas as pd
from sklearn.datasets import make_blobs
import hypercluster

data, labels = make_blobs()
data = pd.DataFrame(data)
labels = pd.Series(labels, index=data.index, name='labels')

# With a single clustering algorithm
clusterer = hypercluster.utilities.AutoClusterer()
clusterer.fit(data).evaluate(
  methods = hypercluster.constants.need_ground_truth+hypercluster.constants.inherent_metrics, 
  gold_standard = labels
  )

hypercluster.visualize.visualize_evaluations(clusterer.evaluation_, multiple_clusterers=False)

# With a range of algorithms

evals, labels_df, labels_dict = optimize_clustering(data)

hypercluster.visualize.visualize_evaluations(evals)

```



