Skip to content

rnajena/read5_ont

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2b49a6a · Nov 27, 2024

History

15 Commits
Nov 27, 2024
Mar 5, 2024
Nov 24, 2023
Mar 6, 2024
Nov 24, 2023
Nov 24, 2023
Nov 24, 2023
Nov 24, 2023
Nov 24, 2023
Nov 24, 2023
Mar 5, 2024
Mar 5, 2024
Nov 24, 2023
Nov 24, 2023
Nov 27, 2024
Nov 24, 2023

Repository files navigation

Alt text

  • Read5 is a python wrapper to read fast5, slow5/blow5 and pod5 files using the same overloaded functions from different APIs. PyPI - Python Version
  • Read5_ont is a python wrapper to read fast5 and pod5 files using the same overloaded functions from different APIs. PyPI - Python Version

License: GPL v3

PyPI PyPI - Downloads PyPI - Status

Anaconda-Server Badge Conda Conda package Conda package

DOI

Twitter Follow


Table of Content

  1. Installation
  2. Usage
  3. Full Documentation

Installation

Pypi/pip

pip install read5_ont

Conda

Pod5 is now available via conda (19.07.2023).

mamba create -n read5_ont -c jannessp read5_ont
conda activate read5_ont

Usage

Click here to see a full documentation about the classes and function.

my_file can be a fast5, slow5, blow5 or pod5 file. The wrapper detects the file format depending on the file extension.

Small example:

from read5 import read # or from read5.Reader import read

r5 = read(my_file) # file with on of these extensions: .fast5, .slow5, .blow5, .pod5
for readid in r5:
    signal = r5.getSignal(readid) # returns raw integer values stored in the file
    pA_signal = r5.getpASignal(readid) # returns pA signal
    norm_signal = r5.getZNormSignal(readid) # returns normalised read signal: norm_signal = (signal - median(signal)) / mad(signal)
    polyAstdSignal = r5.getPolyAStandardizedSignal(readid, polyAstart, polyAend) # returns polyA standardized read signal
    channel = r5.getChannelNumber(readid)
    sampleid = r5.getSampleID(readid)
    runid = r5.getRunID(readid)

readid_list = r5.getReads()

File Reader Classes

If you want to use the file readers you can import the corresponding class like this:

from read5.Fast5Reader import Fast5Reader # contains the Fast5 Reader class
from read5.Slow5Reader import Slow5Reader # contains the Slow5 Reader class - !not available in read5_ont!
from read5.Pod5Reader import Pod5Reader # contains the Pod5 Reader class

Abstract File Reader Class

from read5.AbstractFileReader import AbstractFileReader

Possible Exceptions

from read5.Exceptions import UnknownFileFormatException, UnknownNormalizationMode
  • UnknownFileFormatException: is raised, when the file extension does not match one of ['.fast5', '.slow5', '.blow5', '.pod5'] (or ['.fast5', '.pod5'] in read5_ont)
  • UnknownNormalizationMode: is raised, when an unknown mode is provided for the signal normalization function

Full Documentation

Created with pdoc3. Can be found here.