Metadata-Version: 2.4
Name: neuropid
Version: 2.0.1
Summary: Classifier for neuropeptides across metazoans.
Project-URL: Homepage, https://github.com/iosonofabio/neuropid
Project-URL: Repository, https://github.com/iosonofabio/neuropid.git
Project-URL: Bug Tracker, https://github.com/iosonofabio/neuropid/issues
Author-email: Fabio Zanini <fabio.zanini@unsw.edu.au>
Maintainer-email: Fabio Zanini <fabio.zanini@unsw.edu.au>
License: MIT
Keywords: machine learning,neuropeptides
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Science/Research
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3.14
Requires-Python: >=3.11
Requires-Dist: biopython>=1.85
Requires-Dist: numba>=0.66.0
Requires-Dist: numpy>=2.0.0
Requires-Dist: requests>=2.34.2
Requires-Dist: scikit-learn
Requires-Dist: tqdm>=4.70.0
Description-Content-Type: text/markdown

# neuroPID
NeuroPID is a prediction tool for Neuropeptide Precursor (NPP) and Neuromodulator Proteins. NeuroPID provides a list of candidate NPPs and neuromodulators at a genomic scale from unexplored proteomes using protein FASTA sequences as input.

## Authors
- Original package: Dan Ofer at ddofer"at"gmail.com.
- Refactor and modernisation: Fabio Zanini (fabio dot zanini at unsw dot edu dot au).

## LICENSE
MIT.

## Installation
Packaging is WIP. For now, you can install (e.g. in a venv) the following dependencies:
```
numpy
biopython
tmdq
scikit-learn
```

The package seems to be liking numba but it's unclear at this point whether it actually uses it for anything useful.

## Repo file tree
- README.md: This file.

- LICENSE: License file (MIT).

- neuropid: Source files
  - get_fastasets.py:
    - Downloads Neuropeptides from uniprotKB to a single multi-FASTA file, and a length-binned distribution of Negatives (non Neuropeptides) into multiple multi-FASTAs.

  - local_SLEEK_FeatureGen+_new:
    - Extracts feature data from fasta file(s) in same directory as it, outputs results to two tsv files (one for actual neuropeptides, one for negative control sequences).

  - train_classifier.py:
	  - Train and tests various ML classifiers. Requires prior generation (via FeatureGen+) of Feature data .txt files for training, and from the target/test (multi_fasta)!
    - Reads/Imports the +- Training sets' feature data from a predefined location (must be entered in the script, or you can change the code parameters to accept user inputted dir/location instead).
    - After Training data is imported, ML is automatically trained on it, then performs prediction on a given target/test file (containing feature data) location  (for prediction).

  - getTopPredictedOrganismResults.py (**not refactored yet**):
    - Similar to Testing_organismsML, outputs the " best"  results that have a probability/quorum past a user defined threshhold, and outputs the names of the samples that met this threshhold into a CSV file. 

  - Model_Statisticalparameters_Calc.py (**not refactored yet**):
	  - Used to test performance of various paramters and schemes used for machine learning and the data sets.

- data: Folder for data files used for testing etc.

- results (**not refactored yet**): Looks like an old web thing, doubt it still works.
