ont research.fast5读/写api。

fast5-research的Python项目详细描述


Oxford Nanopore Technologies logo

Fast5_研究

Build Status

ont research提供的python fast5读写功能。

?2018牛津纳米孔技术有限公司

功能

  • 读取接口块.fast5文件,用于提取读取、通道状态、电压…
  • 对单个读取文件的读/写接口,确保一致性。
  • 适用于Linux、MacOS和Windows。
  • 开源(Mozilla公共许可证2.0)。

文档可以在https://nanoporetech.github.io/fast5_research/找到。

安装

fast5_research可从pypi获得,可与pip一起安装:

pip install fast5_research

用法

完整的文档可以在上面的链接中找到,下面是两个简单的例子。

读取文件:

from fast5_research import Fast5

filename='my.fast5'

with Fast5(filename) as fh:
    raw = fh.get_read(raw=True)
    summary = fh.summary()
print('Raw is {} samples long.'.format(len(raw)))
print('Summary {}.'.format(summary))

写一个文件,库会检查给定的元数据,确保所有需要的 值存在,并将所有值转换为其定义的类型。

from uuid import uuid4
import numpy as np
from fast5_research import Fast5

filename='my_new.fast5'
mean, stdv, n = 40.0, 2.0, 10000
raw_data = np.random.laplace(mean, stdv/np.sqrt(2), int(dwell))

# example of how to digitize data
start, stop = int(min(raw_data - 1)), int(max(raw_data + 1))
rng = stop - start
digitisation = 8192.0
bins = np.arange(start, stop, rng / digitisation)
# np.int16 is required, the library will refuse to write anything other
raw_data = np.digitize(raw_data, bins).astype(np.int16)

# The following are required meta data
channel_id = {
    'digitisation': digitisation,
    'offset': 0,
    'range': rng,
    'sampling_rate': 4000,
    'channel_number': 1,
    }
read_id = {
    'start_time': 0,
    'duration': len(raw_data),
    'read_number': 1,
    'start_mux': 1,
    'read_id': str(uuid4()),
    'scaling_used': 1,
    'median_before': 0,
}
tracking_id = {
    'exp_start_time': '1970-01-01T00:00:00Z',
    'run_id': str(uuid4()).replace('-',''),
    'flow_cell_id': 'FAH00000',
}
context_tags = {}

with Fast5.New(filename, 'w', tracking_id=tracking_id, context_tags=context_tags, channel_id=channel_id) as h:
    h.set_raw(raw_data, meta=read_id, read_number=1)

帮助

许可和版权

?2018牛津纳米孔技术有限公司

medaka根据mozilla公共许可2.0的条款发布。

研究版

提供研究报告作为技术示范,以便尽早提供 获取功能或刺激社区开发工具。支持 这个软件将是最小的,只由开发人员直接提供。 欢迎功能请求、改进和讨论 通过分叉和拉取请求实现。不管我们怎么想 喜欢纠正用户可能有的每一个问题和反馈, 开发人员支持此软件的资源可能有限。研究 释放可能不稳定,并受到牛津纳米孔快速迭代的影响 技术。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
并行处理java。util。同时发生的叉子在游泳池里。常见的并行性准则,用于选择正确的并行度大小   java如何将空白字符追加到指定长度?   安卓应用程序中出现错误,SSLHandshakeException,找不到证书路径的信任锚点   java如何使用JUnit Mockito验证检查方法是否未被调用   java如何使用不同的@RequestMapping解析多个控制器中的静态页面   Selenium中的javascript需要验证搜索结果   访问数据库SQLiteopenHelper方法时java应用程序崩溃(nullpointerexception)   在二叉树中验证最小堆时出现java空指针异常   Java 7的SSL连接失败   java用RestEasyWebTarget替换ProxyFactory不起作用   在Java应用程序中单击“否”按钮后,数组程序冻结(无响应)   数组中的前缀Java初学者前进和   Java HTML解析器,包括脚本标记和LineNumberReader   在java中为长类型数字加前导零   正则表达式无法映射正则表达式java。lang.IllegalArgumentException:模式段中捕获组的数量