pyfastx
pyfastx provides memory-efficient random access to sequences in plain and gzip-compressed FASTA and FASTQ files, enabling on-disk index construction and direct subsequence retrieval without loading entire datasets into memory.
Key Features:
- Random Sequence Access: Retrieves full sequences and subsequences from plain and gzip-compressed FASTA and FASTQ files without prior decompression.
- Memory-efficient Indexing: Builds on-disk indices for large FASTA and FASTQ files without loading complete indices or datasets into memory.
- Compressed File Support: Performs random access into gzip-compressed FASTA and FASTQ files.
- Large-scale Dataset Handling: Handles FASTA and FASTQ files containing hundreds of millions of sequences.
Scientific Applications:
- Next-Generation Sequencing Data Processing: Enables rapid retrieval and subsequence extraction from large-scale genomic datasets stored in FASTA and FASTQ formats.
Methodology:
Implements a Python C extension to construct on-disk indices and perform direct byte-level random access within plain and gzip-compressed FASTA and FASTQ files, avoiding full dataset loading and minimizing memory usage during sequence retrieval.
Topics
Details
- License:
- MIT
- Programming Languages:
- C, Python
- Added:
- 1/18/2021
- Last Updated:
- 1/30/2021
Operations
Publications
Du L, Liu Q, Fan Z, Tang J, Zhang X, Price M, Yue B, Zhao K. Pyfastx: a robust Python package for fast random access to sequences from plain and gzipped FASTA/Q files. Briefings in Bioinformatics. 2020;22(4). doi:10.1093/bib/bbaa368. PMID:33341884.