分享

测序仪产出的fastq序列文件里面的序列标识符被修改

 健明 2023-04-04 发布于广东

最近有小伙伴反馈他可能是被科研服务公司欺骗了,因为他拿到了fastq序列文件里面的序列标识符头文件就很奇怪,如下所示:

@CL100111942L2C001R002_63
GGGACACCCAGGACTCAGAGTGAACGCAGAGCGGGTGCCACTGTCGCTCC
+
eGddeeeeedeeaeeeeecZ`edeeeWeedeeeeedeeeeeeeZeeeceY

@CL100111942L2C001R002_61
AGGACATGCATCGCCAGTGGGCAAACCTGATGGAGAAGATACAGGCCTCT
+
fUfefee^eeeefeeee\eeefeff^fdfede\eeeeeef_eeeeffefe

我简单看了看他的反馈, 确实是头文件有点奇怪。。。。

我首先询问了chatGPTfastq文件的头文件规则:


是由4行组成,格式如下:

  1. 第一行以“@”开头,后面紧跟着序列的唯一标识符,通常是一个字符串,可以包含字母、数字和特殊字符,例如:@SEQ_ID:1:FC23BACXX:2:1:1000:1010。
  2. 第二行包含与第一行中的唯一标识符相对应的序列,它是由A、C、G、T和N(表示无法确定的碱基)组成的字符串。
  3. 第三行以“+”开头,可以包含与第一行唯一标识符相同的字符串或其他描述信息,但通常为空。
  4. 第四行是与第二行中的序列相对应的质量值,它是一个ASCII字符的字符串,每个字符代表相应位置上的碱基的质量值。

以下是一个示例fastq文件的前4行:

lessCopy code
@SEQ_ID:1:FC23BACXX:2:1:1000:1010
NTAGCTACCGAGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGCGC
+
BBBFFFFFHHHHHJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ

需要注意的是,每个fastq文件都应该有一个唯一的标识符,因为这个标识符用于将序列和质量值与其他相关信息关联起来。


然后我又强调了需要chatGPT帮我详细介绍illumina测序的fastq文件的序列的唯一标识符规则:


Illumina测序的fastq文件中,序列的唯一标识符通常由四部分组成,分别为:仪器编号、序列编号、flowcell编号和片段编号。其中,仪器编号和flowcell编号用于标识Illumina测序仪的型号和运行的flowcell的编号;序列编号和片段编号用于标识序列的唯一性。

具体来说,唯一标识符的格式通常如下:

rubyCopy code
@<instrument>:<run number>:<flowcell ID>:<lane>:<tile>:<x-pos>:<y-pos> <read>:<is filtered>:<control number>:<sample number>

其中各部分含义如下:

  • <instrument>: 测序仪的名称或序列编号
  • <run number>: 测序运行的编号,通常从1开始
  • <flowcell ID>: 测序流动池的编号
  • <lane>: 测序流动池中的lane编号,从1开始
  • <tile>: lane中的tile编号,从1开始
  • <x-pos>: tile的x轴坐标
  • <y-pos>: tile的y轴坐标
  • <read>: 测序数据的read编号,通常为1或2
  • <is filtered>: 是否过滤的标志,通常为Y或N
  • <control number>: 控制编号,通常为0
  • <sample number>: 样本编号,通常为1

需要注意的是,序列的唯一标识符可以根据实际需要进行修改,但应确保每个序列的唯一性,以便在数据分析过程中能够准确地将序列与相关信息对应起来。


如果大家拿到的测序仪产出的fastq序列文件是公司给的,通常是里面的序列标识符很清晰可以看到机器等信息,但是如果是从SRA等数据库下载的,公共数据在上传的时候就有可能被修改了。正常走cellranger的定量流程即可,就需要测序仪产出的fastq序列文件,代码我已经是多次分享了。参考:

但是,最近有小伙伴反映到他2019的时候在华大智造的BGISEQ-500平台测序的,这个时候我也问了 chatGPT相关规则:


华大智造的BGISEQ-500平台的fastq文件的序列的唯一标识符规则与Illumina测序平台的规则类似,但略有不同。BGISEQ-500平台的序列的唯一标识符通常由7部分组成,格式如下:

rubyCopy code
@<instrument>:<run number>:<flowcell ID>:<lane>:<tile>:<x-pos>:<y-pos> <read>:<is filtered>:<control number>:<index sequence>

其中,各部分的含义如下:

  • <instrument>: 测序仪的名称或序列编号
  • <run number>: 测序运行的编号,通常从1开始
  • <flowcell ID>: 测序流动池的编号
  • <lane>: 测序流动池中的lane编号,从1开始
  • <tile>: lane中的tile编号,从1开始
  • <x-pos>: tile的x轴坐标
  • <y-pos>: tile的y轴坐标
  • <read>: 测序数据的read编号,通常为1或2
  • <is filtered>: 是否过滤的标志,通常为Y或N
  • <control number>: 控制编号,通常为0
  • <index sequence>: 样本条码序列,通常为6-10个碱基,用于标识样本

需要注意的是,BGISEQ-500平台的唯一标识符中包含了样本条码序列信息,这是区别于Illumina平台的一个特点,因为在BGISEQ-500平台上,样本条码通常是在文库构建过程中添加的,用于标识样本来源。


我就很难判断这个时候的chatGPT关于华大智造的BGISEQ-500平台的fastq文件的序列的唯一标识符的介绍是否准确了。

不过,这个并不是重点,重点是小伙伴反映到他2019的时候拿到的fastq文件的头文件有问题,可以看到,如下所示的4个文件,各自的头文件都很奇怪,如下所示:

head  *|grep "^[@|=]"

==> C57_C1.fq <==
@CL100111942L2C001R002_72
@CL100111942L2C001R002_117
@CL100111942L2C001R002_278

==> C57_C2.fq <==
@CL100111942L2C001R002_2
@CL100111942L2C001R002_66
@CL100111942L2C001R002_82

==> C57_o1.fq <==
@CL100111942L2C001R002_32
@CL100111942L2C001R002_99
@CL100111942L2C001R002_129

==> C57_o2_1.fq <==
@CL100111942L2C001R002_1
@CL100111942L2C001R002_23
@CL100111942L2C001R002_37

完全就看不出来fastq文件的序列的唯一标识符规则是什么,诡异啊!绝大部分小伙伴如果去搜索,肯定是搜索到的是illumina公司的,因为它是目前市面上最流行的测序仪,它定义了规则:

详见:https://learn.gencore.bio./ngs-file-formats/fastq-format/

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多