# npysearch
npysearch implements an efficient BLAST-like sequence comparison algorithm, written in C++11 and using native Python datatypes and bindings. npysearch is light-weight, fast, and dependency-free. The code base of npysearch is adapted from [nsearch](https://github.com/stevschmid/nsearch).
## Installation
### from pypi
```
pip install npysearch
```
### from conda-forge
Installing from the `conda-forge` channel can be achieved by adding `conda-forge` to your channes with:
```
conda config --add channels conda-forge
conda config --set channel_priority strict
```
You can skip the above step if `conda-forge` channel has been added already.
Once the conda-forge channel has been enabled, `npysearch` can be installed with:
```
conda install npysearch
```
### from github
```
# Clone repository from github
git clone https://github.com/tamminenlab/npysearch.git
# Install package using pip
pip install ./npysearch
```
## Examples
```Python
# Import npysearch package
import npysearch as npy
# Read query file into a dictionary
query = npy.read_fasta("npysearch/data/query.fasta")
# Read database file into a dictionary
database = npy.read_fasta("npysearch/data/db.fasta")
# BLAST the query against the database
results_dna = npy.blast(query, database)
# BLAST protein sequence file against itself using filenames as blast function arguments
results_prot = npy.blast(query = "npysearch/data/prot.fasta",
database = "npysearch/data/prot.fasta",
alphabet = "protein")
```
## Caveats
* The `blast` function automatically detects whether the query and database arguments were passed as string paths to fasta files or as dictionaries of sequences. Both of them need not be input as the same type.
* Use `help(npy)` (assuming you've imported npysearch as npy) to get a list of the functions included and their docstrings. For docstrings of specific functions, for example blast, use `help(npy.blast)`
Raw data
{
"_id": null,
"home_page": "https://github.com/jeevannavar/npysearch",
"name": "npysearch",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "BLAST nsearch bioinformatics",
"author": "Aditya Jeevannavar",
"author_email": "adjeev@utu.fi",
"download_url": "https://files.pythonhosted.org/packages/5c/eb/b7a9c115c095361aaaea9457e60720a5b5c5bc5c0beea02d5c21a2b32ac8/npysearch-1.3.1.tar.gz",
"platform": null,
"description": "# npysearch\n\nnpysearch implements an efficient BLAST-like sequence comparison algorithm, written in C++11 and using native Python datatypes and bindings. npysearch is light-weight, fast, and dependency-free. The code base of npysearch is adapted from [nsearch](https://github.com/stevschmid/nsearch).\n\n\n## Installation\n\n### from pypi\n\n```\npip install npysearch\n```\n\n### from conda-forge\n\nInstalling from the `conda-forge` channel can be achieved by adding `conda-forge` to your channes with:\n```\nconda config --add channels conda-forge\nconda config --set channel_priority strict\n```\nYou can skip the above step if `conda-forge` channel has been added already.\n\nOnce the conda-forge channel has been enabled, `npysearch` can be installed with:\n\n```\nconda install npysearch\n```\n\n### from github\n\n```\n# Clone repository from github\ngit clone https://github.com/tamminenlab/npysearch.git\n\n# Install package using pip\npip install ./npysearch\n```\n\n\n## Examples\n\n```Python\n# Import npysearch package\nimport npysearch as npy\n\n# Read query file into a dictionary\nquery = npy.read_fasta(\"npysearch/data/query.fasta\")\n\n# Read database file into a dictionary\ndatabase = npy.read_fasta(\"npysearch/data/db.fasta\")\n\n# BLAST the query against the database\nresults_dna = npy.blast(query, database)\n\n# BLAST protein sequence file against itself using filenames as blast function arguments\n\nresults_prot = npy.blast(query = \"npysearch/data/prot.fasta\",\n \t\t database = \"npysearch/data/prot.fasta\",\n \t alphabet = \"protein\")\n```\n\n## Caveats\n\n* The `blast` function automatically detects whether the query and database arguments were passed as string paths to fasta files or as dictionaries of sequences. Both of them need not be input as the same type.\n* Use `help(npy)` (assuming you've imported npysearch as npy) to get a list of the functions included and their docstrings. For docstrings of specific functions, for example blast, use `help(npy.blast)`\n",
"bugtrack_url": null,
"license": "",
"summary": "Python bindings for nsearch, an efficient BLAST-like sequence comparison algorithm written in C++",
"version": "1.3.1",
"project_urls": {
"Homepage": "https://github.com/jeevannavar/npysearch"
},
"split_keywords": [
"blast",
"nsearch",
"bioinformatics"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "a5f19f1a0892ee0a2d5fac68cda32451cd64e7d51e38f1785fd0283108ef3015",
"md5": "23bf6633b8d6b4ff8a3eb39112716dbc",
"sha256": "112dd98de079b8dae276ed32b009394597c082ef1569d4710f19b8cb0c2ac2c1"
},
"downloads": -1,
"filename": "npysearch-1.3.1-cp310-cp310-manylinux_2_24_x86_64.whl",
"has_sig": false,
"md5_digest": "23bf6633b8d6b4ff8a3eb39112716dbc",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 153123,
"upload_time": "2022-09-20T10:14:41",
"upload_time_iso_8601": "2022-09-20T10:14:41.477421Z",
"url": "https://files.pythonhosted.org/packages/a5/f1/9f1a0892ee0a2d5fac68cda32451cd64e7d51e38f1785fd0283108ef3015/npysearch-1.3.1-cp310-cp310-manylinux_2_24_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "4618c9c9bd317d9ad73ef1641c84e412ec43f955e6f717d491627985fd0a86cb",
"md5": "4efa04905332292afdc7ebc5afaf3f3f",
"sha256": "6702a9a5fc1d419c0f2cbb52eb40b2cb6c782d1fa3da016f367ce43e157d5b55"
},
"downloads": -1,
"filename": "npysearch-1.3.1-cp310-cp310-win_amd64.whl",
"has_sig": false,
"md5_digest": "4efa04905332292afdc7ebc5afaf3f3f",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.6",
"size": 137363,
"upload_time": "2022-09-20T10:14:43",
"upload_time_iso_8601": "2022-09-20T10:14:43.731586Z",
"url": "https://files.pythonhosted.org/packages/46/18/c9c9bd317d9ad73ef1641c84e412ec43f955e6f717d491627985fd0a86cb/npysearch-1.3.1-cp310-cp310-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8ad3745912d25a79b92b0a8d8987797f6c7416787511dc1db9cb2c0c44901b7d",
"md5": "7a86f08541a7d73d84b9dab7687585a6",
"sha256": "e432f61da7c87d3293db72c6342ea3190fa0b477481684ec6080f2e6adf93248"
},
"downloads": -1,
"filename": "npysearch-1.3.1-cp38-cp38-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "7a86f08541a7d73d84b9dab7687585a6",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.6",
"size": 161326,
"upload_time": "2022-09-20T10:14:46",
"upload_time_iso_8601": "2022-09-20T10:14:46.148321Z",
"url": "https://files.pythonhosted.org/packages/8a/d3/745912d25a79b92b0a8d8987797f6c7416787511dc1db9cb2c0c44901b7d/npysearch-1.3.1-cp38-cp38-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "50684bc3946b2f1b66089e3146c5f64e2f8782bb1eaf9324bed2548362aee27b",
"md5": "ee01808b84cabd2086eedf6c45ae7b0d",
"sha256": "47e7d0e8258808927ed7ab59dc11239141c17e652d871a356922949d34c9bc62"
},
"downloads": -1,
"filename": "npysearch-1.3.1-cp39-cp39-win_amd64.whl",
"has_sig": false,
"md5_digest": "ee01808b84cabd2086eedf6c45ae7b0d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.6",
"size": 137381,
"upload_time": "2022-09-20T10:14:48",
"upload_time_iso_8601": "2022-09-20T10:14:48.811612Z",
"url": "https://files.pythonhosted.org/packages/50/68/4bc3946b2f1b66089e3146c5f64e2f8782bb1eaf9324bed2548362aee27b/npysearch-1.3.1-cp39-cp39-win_amd64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "5cebb7a9c115c095361aaaea9457e60720a5b5c5bc5c0beea02d5c21a2b32ac8",
"md5": "fcb45cb594ed8665d298c358b538062e",
"sha256": "03c4b7a3be80f5168e6df3f9dc57cdca71d822f09a3a5d90994c308334a53f46"
},
"downloads": -1,
"filename": "npysearch-1.3.1.tar.gz",
"has_sig": false,
"md5_digest": "fcb45cb594ed8665d298c358b538062e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 38044,
"upload_time": "2022-09-20T10:14:51",
"upload_time_iso_8601": "2022-09-20T10:14:51.127471Z",
"url": "https://files.pythonhosted.org/packages/5c/eb/b7a9c115c095361aaaea9457e60720a5b5c5bc5c0beea02d5c21a2b32ac8/npysearch-1.3.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-09-20 10:14:51",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "jeevannavar",
"github_project": "npysearch",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "npysearch"
}