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.2-py3-none-any.whl (6.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: parseid-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 6.9 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5bd8920286e7346240c42790a933844b9f3a6a005bd87845530ebc8b81927cd8
MD5 8a029e5f90bb7f8e76623e2240c14a1f
BLAKE2b-256 9a95e7bd0d95dcc8162f15902e0d5a16f95ffeaf121f1ec63a59c4c63b2bcfcf

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