Skip to main content

suck, parse identifiers or accession numbers

Project description

\n# parseID: suck, parse identifiers or accession numbers

Introduction

parseID is a bioinformatics data structure library optimized for sucking identifiers or accession numbers into memory, parse those identifiers accession numbers to each other.

Identifiers or accession numbers are defined and referenced by various biological databases. Their number could be million size or even billion level. Some data operations, such as query or parse, are very common.

parseID employs Data structure "trie" and "ditrie". Trie could suck tremendous identifiers into memory at a time. Ditrie could suck a large number of mapping of identifiers. Through the trie and ditrie, huge data operations including insert, get, search, delete, scan etc could be quickly called.

testing

pytest -s tests

quick start

There is one example about how huge accession numbers are sucked into Trie. The mapping file could be downloaded from https://ftp.ncbi.nlm.nih.gov/gene/DATA/gene_refseq_uniprotkb_collab.gz into local space. Retrieve 176,513,729 (03/25/2024) UniProt Accession numbers from the file and feed them into Trie. Showed as the example below, accession numbers are stored in the object uniprotkb_acc_trie.

from parseid import ProcessID
infile = 'gene_refseq_uniprotkb_collab'
uniprotkb_acc_trie = ProcessID(infile).uniprotkb_accession()

Retrieve pairs of NCBI protein accession number and UniProt Accession numbers from file and feed them into Ditrie. Showed as the example below, the mapping fo two accession numbers are stored in the object map_trie, which is ready for query or parsing.

from parseid import ProcessID
infile = 'gene_refseq_uniprotkb_collab'
ncbi_uniprotkb_ditrie = ProcessID(infile).map_ncbi_uniprotkb()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

parseid-0.1.3-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file parseid-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: parseid-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for parseid-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 b6085f420b8f3a72223b238c5c76f5643b38c648e6dd2690674f56d65e36fe88
MD5 38ee82b6c81f7e7dd25fa9e7b033455b
BLAKE2b-256 90c42398a18c525118c834d6b0417427f55d47a9c083a733ce18eb94779d1869

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page