parsing ABI file

ABI测序仪下机的结果包含.ab1和.seq文件,通常可以导入BioEdit这样的图形化软件检查峰形和运行blast,而如果想要实现自动化的检测杂合位点并做比对,最终得到变异位点,就需要花些时间研究下。

主要的问题是,ab1文件是二进制的,关于文件格式的文档稀少,唯一靠谱的是ABI的官方文档 仔细看过这个文档你会发现,看完之后作为新手的你尽管对于这个格式有所了解,知道它分为Header、Directory以及Data,以及有很多的tag。但知道这些对于想要从ab1提取trace value并进行heterogeneous base calling是远远不够的。所好的是,已经有人有过类似需求并作了尝试。

  • abifpy 实现的一个解析ab1文件的模块,现已并入BioPython。优点是兼容Python2和Python3,部分meta data已经给你提取出来了,而如果想要更多,可以使用get_data(‘youkey‘)获取。

  • 如果只需要取出每个通道的trace value,有了官方文档和abifpy就够了,如果还想学习更多,可以读一读SeqTrace源码,从中可以学到怎样组织一个项目的代码,以及怎么写测试。

  • 前面两个都研究一番之后,还是不能满足你的好奇心?可以把io lib这个库研究下,学习使用它的API.