Metadata-Version: 2.1
Name: genetools
Version: 0.2.0
Summary: General genetics/genomics utilities.
Home-page: https://github.com/maximz/genetools
Author: Maxim Zaslavsky
Author-email: maxim@maximz.com
License: MIT license
Keywords: genetools
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Requires-Python: >=3.6
Description-Content-Type: text/markdown
Requires-Dist: numpy
Requires-Dist: matplotlib
Requires-Dist: pandas
Requires-Dist: seaborn
Provides-Extra: scanpy
Requires-Dist: scanpy ; extra == 'scanpy'

# genetools: single-cell analysis recipes (work in progress)

![https://pypi.python.org/pypi/genetools](https://img.shields.io/pypi/v/genetools.svg)
![https://travis-ci.com/maximz/genetools](https://img.shields.io/travis/maximz/genetools.svg)

## Plot gallery

<table>
<tr>
<td>

[![](tests/baseline/test_umap_scatter_discrete.png)](https://github.com/maximz/genetools/blob/master/tests/test_plots.py)

</td>
<td>

[![](tests/baseline/test_horizontal_stacked_bar_plot.png)](https://github.com/maximz/genetools/blob/master/tests/test_plots.py)

</td>
</tr>
</table>

## Other features

* Compare clustering results by computing co-clustering percentage.
* Map marker genes against reference lists to find names for your clusters.
* pandas shotrcuts:
  * Split single cell barcodes conveniently.
  * Defensive pandas merging and concatenation methods with strict correctness checks.

Full documentation: [https://genetools.maximz.com](https://genetools.maximz.com).

## Install

Run `pip install --upgrade genetools[scanpy]`. Exclude brackets if you don't use scanpy.

## Usage

To use genetools in a project, add `import genetools`. Review the [documentation](https://genetools.maximz.com) and the [tests](https://github.com/maximz/genetools/tree/master/tests) for examples.

## Development

Setup:

```
git clone git://github.com/maximz/genetools
cd genetools
pip install -r requirements_dev.txt
pre-commit install
```

Common commands:

```
# lint
make lint

# run tests
make test

# generate baseline figures (run from root directory)
make regen-tests

# bump version before submitting a PR against master (all master commits are deployed)
bump2version patch # possible: major / minor / patch

# also ensure CHANGELOG.md updated
```

CI:
- Main: https://travis-ci.com/github/maximz/genetools
- Docs: https://app.netlify.com/sites/genetools


# Changelog

## 0.2.0 (2020-06-03)

* Far faster implementation of `stats.coclustering`
* Introducing `helpers.make_slurm_command`
* Global submodule import (no longer need to import submodules individually)

## 0.1.0 (2020-03-06)

* First release on PyPI.


