pacbio 采用hdf5文件格式保存原始的下机数据,对于RS 测序系统而言,会产生一个 bas.h5 的文件;

以bas.h5 文件为例,看一下有下机数据中保存了那些信息

h5dump 工具可以用来查看h5 文件的内容:

我从HGAP的wiki 页面下载了一个测试用的h5文件,文件名为 m120729_040044_42134_c100384402550000001523033010171256_s1_p0.bas.h5

运行下面命令:

h5dump -n  m120729_040044_42134_c100384402550000001523033010171256_s1_p0.bas.h5

可以看到这个文件中所有的group和dataset, 由于结果太多,只展示最上层的两个group;

group      /
group      /PulseData
group      /ScanData

通过这个命令的运行结果,可以发现,这个h5文件中有两个大的group : PulseData 和 ScanData

其中ScanData 存储的是和仪器相关的一些设备信息,就不详细看了,重点看下PulseData group 下的信息;

group      /PulseData
group      /PulseData/BaseCalls
group      /PulseData/ConsensusBaseCalls

在 PluseData group 下面又有两个subgroup, BaseCalls 和 ConsensusBaseCalls ;

其中BaseCalls 存放的是原始的碱基calling的结果,而ConsensusBaseCalls 存放的是环形一致性序列(ccs)的碱基calling的结果,

在这两个group下有一个相同名称的数据集 Basecall, 存放的就是碱基序列的信息

dataset    /PulseData/BaseCalls/Basecall
dataset    /PulseData/ConsensusBaseCalls/Basecall

使用如下命令,查看该数据集的内容:

h5dump -d /PulseData/ConsensusBaseCalls/Basecall  m120729_040044_42134_c100384402550000001523033010171256_s1_p0.bas.h5 > Basecall.info

由于文件内容太多,重定向到一个文件中;-d 参数指定你想要查看的数据集的名称

通过BaseCall.info 文件中的内容可以看到,如下的信息

DATA {(0): 67, 71, 67, 67, 65, 71, 67, 71, 65, 65, 84, 71, 71, 67, 84, 71, 67,(17): 71, 71, 71, 71, 65, 65, 71, 67, 65, 71, 65, 65, 65, 84, 84, 65, 84,(34): 67, 67, 71, 84, 65, 65, 65, 67, 84, 71, 84, 84, 71, 67, 84, 71, 67,(51): 67, 71, 65, 65, 65, 84, 71, 67, 67, 65, 71, 67, 71, 65, 84, 71, 67,(68): 65, 71, 84, 71, 84, 67, 84, 71, 67, 65, 65, 67, 84, 71, 71, 67, 65,

这里的DATA 就是测序得到的碱基序列,只不过采用了ASCII 编码,A=> 65, C=> 67, G=>71, T=>84;

只有碱基序列还不够,我们还需要碱基质量的信息,对应的dataset的名称为 QualityValue

dataset    /PulseData/BaseCalls/QualityValue
dataset    /PulseData/ConsensusBaseCalls/QualityValue

同样的方式查看碱基质量的数据:

h5dump -d /PulseData/ConsensusBaseCalls/QualityValue  m120729_040044_42134_c100384402550000001523033010171256_s1_p0.bas.h5 > Basecall.quality

通过BaseCall.quality 文件中的内容可以看到,如下的信息

DATA {(0): 51, 44, 42, 44, 24, 24, 51, 51, 51, 51, 50, 20, 20, 20, 50, 51, 51,(17): 48, 48, 48, 47, 9, 9, 9, 51, 51, 46, 31, 31, 31, 31, 44, 51, 51, 30,(35): 30, 51, 51, 7, 7, 7, 7, 51, 51, 44, 44, 44, 51, 51, 50, 27, 27, 26,(53): 27, 27, 27, 27, 51, 36, 36, 30, 30, 51, 51, 49, 49, 51, 51, 51, 51,(70): 51, 51, 51, 51, 51, 51, 49, 44, 31, 51, 51, 20, 20, 34, 48, 48, 31,(87): 30, 34, 36, 23, 23, 51, 26, 26, 49, 50, 45, 45, 50, 44, 41, 43, 50,(104): 50, 51, 37, 37, 50, 51, 25, 25, 44, 51, 51, 51, 37, 37, 37, 37, 51,

这里的DATA就是碱基质量值,pacbio的碱基质量值和illumina的碱基质量值一样的。

参考链接:http://files.pacb.com/software/instrument/2.0.0/bas.h5%20Reference%20Guide.pdf

pacbio 原始下机数据h5 文件简介相关推荐

  1. 从nginx日志原始二进制数据还原文件

    nginx的access日志自定义格式记录了post请求数据,因为一些原因需要从原始数据恢复出jpg格式图片. 首先处理日志,筛选出含有图片数据的日志条目,取出其中一条进行分析,大致格式如下,为了便于 ...

  2. 点云数据pcd文件简介

    SLAM学习交流可加群:248085206 三维点云数据简介 1 什么是点云数据 点云数据是指在一个三维坐标系中的一组向量的集合.这些向量通常以X,Y,Z三维坐标的形式表示,一般主要代表一个物体的外表 ...

  3. bam文件读取_科学网—Pacbio Sequel两种bam文件解析 - 卢锐的博文

    pacbio目前有两种主流的测序平台,RSII和Sequel,后者是前者的升级版. pacbio sequel下机是bam格式的reads文件,它和reads比对到参考基因组上生成的bam文件,内容有 ...

  4. 二代测序下机数据的数据处理

    本人接触过多家从事人类基因组的二代测序公司,包括肿瘤.全外遗传病和健康人全外测序体检,很多公司的数据处理和报告解读都存在一定的问题,这个系列就作为本人在人类基因组领域的解读和分享. 目前很多公司都在使 ...

  5. 理解h5文件并使用python对h5格式文件进行读写操作

    (一)HDF与h5   HDF(Hierarchical Data Format层次数据格式)是一种设计用于存储和组织大量数据的文件格式,最开始由美国国家超算中心研发,后来由一个非盈利组织HDF Gr ...

  6. 三代测序原理与数据文件简介(SMRT+Nanopore)

    三代测序原理与数据文件简介(SMRT+Nanopore) 一生雾梦 2019-12-03 20:48:42  1578  收藏 2 分类专栏: 前沿文献分析 文章标签: 三代测序(SMS) SMRT  ...

  7. PacBio下机数据解读

    今天被人问起如何看懂三代的下机数据,虽然解决了别人的问题,但感觉自己还是没有搞透. 基本的目录结构: |-- HG002new_O1l_BP_P6_021315b_MB_100pM | |-- D01 ...

  8. PacBio HiFi测序介绍及百迈客最新下机数据公布

    PacBio HiFi测序介绍及百迈客最新下机数据公布 百迈客生物 ​ 已认证账号 已关注 3 人赞同了该文章 众所周知,要获得基因组的完整图片,就必须组装reads,以目前主要的测序技术来看,短读长 ...

  9. b是python文件二进制打开_如何在Python中打开和显示原始二进制数据?

    'rb'模式允许您从Python中的文件读取原始二进制数据:with open(filename, 'rb') as file: raw_binary_data = file.read() type( ...

最新文章

  1. initrd.img解压和压缩
  2. 智能运维监管系统终端_什么系统能实现机房智能运维?
  3. 【BZOJ2539】【codevs1221】丘比特的烦恼,trie树+几何判断+费用流
  4. Django模板:url反向解析
  5. hibernate集合类型映射
  6. iview tooltip自动消失_实现自动驾驶,为什么要对汽车、行人的轨迹进行预测?它与物体检测、追踪和路径规划间的关系是什么?...
  7. robot脚本编写规范
  8. 关于EasyUI在Datagrid里面将某一列设置为超链接并传递当前行的某一参数传递给打开的对话框。
  9. 51单片机原理以及接口技术(四)--80C51的程序设计
  10. Navicat Premium 12破解方法(亲测可用)
  11. 实时渲染入门:静态光照和动态光照
  12. HanLP-命名实体识别总结
  13. 小米VR一体机、Oculus Go投屏到PC、TV教程
  14. 如何在vue中设置全局方法
  15. H3C网管型交换机、路由器 常用登录管理方式使用详解 及 默认端口号,默认用户名、密码
  16. 不谋正业的诗人:没有副业 诗人都得饿死
  17. memset, fill 对bool,int 赋值的效率
  18. 你的链上资产存储安全吗?交易自由吗?
  19. Java实现蓝桥杯 算法训练 ALGO-15 旅行家的预算
  20. (转)函数式编程另类指南

热门文章

  1. ZOJ Problem Set - 1008
  2. 推荐《富爸爸、穷爸爸》
  3. 《幸福就在你身边》第一课、你有追求美好生活的权利【哈佛大学幸福课精华】...
  4. 纪事:最后的足球比赛
  5. 接口测试之json中的key获取
  6. 01-02 Linux常用命令-文件处理
  7. R语言程序员转型首选,年薪35W+,市场缺口巨大!
  8. python读取文件_一日一技:使用Python读取Excel文件
  9. 在php中array函数的作用是什么意思,php中的array函数有什么用
  10. sql查询每科成绩的最高分_数据分析SQL查询:一文带你入门到掌握