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. h5文件简介

    h5文件是层次格式的第5代版本,用于存储科学数据的一种文件格式和库文件,由美国超级计算中心与应用中心研发的文件格式,用以存储和组织大规模数据. H5将文件结构简化成两个主要的对象类型: 1 数据集da ...

  2. PacBio下机数据解读

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

  3. PacBio下机数据如何看?

    一开始拿到三代测序的下机数据时,蒙了,readme ?三代测序的下机数据都有哪些,以及他们具体的格式是怎么样的(以sequel 平台为主). 测序过程 SMRTbell A adapter通用接头,两 ...

  4. 3、PACBIO下机数据如何看

    转载:http://www.cnblogs.com/jinhh/p/8328818.html 三代测序的下机数据都有哪些,以及他们具体的格式是怎么样的(以sequel 平台为主). 测序过程 SMRT ...

  5. sa命令从/var/account/pacct原始记账数据文件读取信息并汇总

    sa命令从/var/account/pacct原始记账数据文件读取信息并汇总

  6. Django框架-目录文件简介

    Rhel6.5 Django1.10 Python3.5 Django框架-目录文件简介 1.介绍Django Django:一个可以使Web开发工作愉快并且高效的Web开发框架. 使用Django, ...

  7. 如何用Matlab将cell数据写入文件

    我们知道,一般的文件读写函数是不接受直接将cell内容(非数值)直接写入文件的, 例如:dlmwrite('o.txt', C, 'delimiter', '\t');%C 为cell类型数据,会报错 ...

  8. [安卓]AndroidManifest.xml文件简介及结构

    1.AndroidManifest.xml文件简介: 每个应用程序在它的根目录中都必须要有一个AndroidManifest.xml(名字须精确一致)文件.这个清单把应用程序的基本信息提交给Andro ...

  9. (转)IOS之Info.plist文件简介

    原文:IOS之Info.plist文件简介 http://www.apkbus.com/android-130240-1-1.html (出处: Android开发论坛 - 安卓开发论坛 - Andr ...

随机推荐

  1. 解决Git在Linux 乱码问题

    在Linux如果要提交的文件名是中文的,默认git commit的时候就会把中文显示为一串数字如下: create mode "\346\265\213\350\257\225" ...

  2. sql排它锁

    1.为什么需要排它锁 事务中,有时我们在操作一条数据时,是不能让其他事务同时去操作的. 如某商品库存数量为1,如果有多个事务对该库存进行减一操作,那么库存可能出现负数. 所以,在某个事务操作时,需要把 ...

  3. Oracle PLSQL Demo - 12.定义包体[Define PACKAGE BODY]

    CREATE OR REPLACE PACKAGE BODY temp_package_demo is FUNCTION f_demo(userid NUMBER) RETURN BOOLEAN IS ...

  4. uniqueIdentifier在ios7不支持后的替代方法

    UIDevice的uniqueIdentifier方法在ios7就不支持了, 为了获得设备相关的唯一标识符, 参考了这里:https://github.com/Itayber/UIDevice-uni ...

  5. Kafka Consumer 启动测试类

    https://github.com/MarcoGhise/SpringKafka.git package it.demo.kafka.springkafka.listener; import org ...

  6. angularjs获取元素以及angular.element()用法

    addClass()-为每个匹配的元素添加指定的样式类名 after()-在匹配元素集合中的每个元素后面插入参数所指定的内容,作为其兄弟节点 append()-在每个匹配元素里面的末尾处插入参数内容 ...

  7. encoding/path可能引起无数奇怪的问题

    例如如下代码: <%@ page language="java" contentType="text/html; charset=UTF-8" pageE ...

  8. LeetCode: Combination Sum 解题报告

    Combination Sum Combination Sum Total Accepted: 25850 Total Submissions: 96391 My Submissions Questi ...

  9. LeetCode: Max Points on a Line 解题报告

    Max Points on a Line Given n points on a 2D plane, find the maximum number of points that lie on the ...

  10. webRTC结合canvas截图

    直接看代码.css基础弱鸡,将就看吧.慢慢学习 <!DOCTYPE html> <html> <head> <meta charset="utf-8 ...