Metadata-Version: 2.1
Name: mokapot
Version: 0.3
Summary: Semi-supervised learning for peptide detection by pretrained models
Home-page: https://github.com/wfondrie/mokapot
Author: William E. Fondrie
Author-email: fondriew@gmail.com
License: Apache 2.0
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Topic :: Scientific/Engineering :: Bio-Informatics
Description-Content-Type: text/markdown
Requires-Dist: numpy (>=1.18.1)
Requires-Dist: pandas (>=1.0.3)
Requires-Dist: scikit-learn (>=0.22.1)
Requires-Dist: numba (>=0.48.0)
Requires-Dist: triqler (>=0.3.0)
Requires-Dist: matplotlib (>=3.1.3)
Provides-Extra: dev
Requires-Dist: pre-commit (>=2.7.1) ; extra == 'dev'
Requires-Dist: black (>=19.10b0) ; extra == 'dev'
Provides-Extra: docs
Requires-Dist: numpydoc (>=1.0.0) ; extra == 'docs'
Requires-Dist: sphinx-argparse (>=0.2.5) ; extra == 'docs'
Requires-Dist: sphinx-rtd-theme (>=0.5.0) ; extra == 'docs'
Requires-Dist: nbsphinx (>=0.7.1) ; extra == 'docs'
Requires-Dist: ipykernel (>=5.3.0) ; extra == 'docs'

<img src="https://raw.githubusercontent.com/wfondrie/mokapot/master/static/mokapot_logo_dark.svg" width=300>  

---

[![PyPI version](https://badge.fury.io/py/mokapot.svg)](https://badge.fury.io/py/mokapot)
[![tests](https://github.com/wfondrie/mokapot/workflows/tests/badge.svg)](https://github.com/wfondrie/mokapot/actions?query=workflow%3Atests)
[![Documentation Status](https://readthedocs.org/projects/mokapot/badge/?version=latest)](https://mokapot.readthedocs.io/en/latest/?badge=latest)
[![Built with Spacemacs](https://cdn.rawgit.com/syl20bnr/spacemacs/442d025779da2f62fc86c2082703697714db6514/assets/spacemacs-badge.svg)](http://spacemacs.org)  



Fast and flexible semi-supervised learning for peptide detection.  

mokapot is fundamentally a Python implementation of the semi-supervised learning
algorithm first introduced by Percolator. We developed mokapot to add additional
flexibility to our analyses, whether to try something experimental---such as
swapping Percolator's linear support vector machine classifier for a non-linear,
gradient boosting classifier---or to train a joint model across experiments
while retaining valid, per-experiment confidence estimates. We designed mokapot
to be extensible and support the analysis of additional types of proteomics
data, such as cross-linked peptides from cross-linking mass spectrometry
experiments. mokapot offers basic functionality from the command line, but using
mokapot as a Python package unlocks maximum flexibility.

For more information, check out our
[documentation](https://mokapot.readthedocs.io).  

## Installation  

mokapot requires Python 3.6+ and can be installed with pip:  

```
$ pip3 install mokapot
```

Additionally, you can install the development version directly from GitHub:  

```
$ pip3 install git+git://github.com/wfondrie/mokapot
```

## Basic Usage  

Before you can use mokapot, you need PSMs assigned by a search engine available
in the [Percolator tab-delimited file
format](https://github.com/percolator/percolator/wiki/Interface#tab-delimited-file-format)
(often referred to as the Percolator input, or "PIN", file format). 

Simple mokapot analyses can be performed at the command line:

```Bash
$ mokapot psms.pin
```

Alternatively, the Python API can be used to perform analyses in the Python
interpreter and affords greater flexibility:

```Python
>>> import mokapot
>>> psms = mokapot.read_pin("psms.pin")
>>> results, models = mokapot.brew(psms)
>>> results.to_txt()
```

Check out our [documentation](https://mokapot.readthedocs.io) for more details
and examples of mokapot in action.


