首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >seqtk—抽取随机序列

seqtk—抽取随机序列

作者头像
生信菜鸟团
发布2025-02-26 21:33:18
发布2025-02-26 21:33:18
8371
举报
文章被收录于专栏:生信菜鸟团生信菜鸟团

工欲善其事 必先利其器

25年的新梗“干中学”相信大家都不陌生。诚然,在实践中学习是一种极为高效且充满活力的方式。当面对一项任务时,明确的需求如同一盏明灯,让我们能够有的放矢地投入精力。而每一次的尝试与探索,成就看得见的进步。这种“干中学”的过程,不仅让我们在实践中积累经验,更赋予了我们面对未知的勇气和解决问题的能力。今天我们就来学习一个具体的需求:从FastQ文件随机抽取一定数量的reads 。

FastQ文件

首选我们要了解fastq文件——FASTQ是基于文本的,保存生物序列(通常是核酸序列)和其测序质量信息的标准格式。其序列以及质量信息都是使用一个ASCII字符来表示,常用于高通量测序数据的存储。最初由Sanger开发,目的是将FASTA序列与质量数据放到一起,目前已经成为高通量测序结果的标准格式。

FASTQ格式常以四部分组成:

  • 第一部分:以@开头紧接着是序列的标识符和可选择的描述信息。和fasta格式的第一行相似。
  • 第二部分:是原始序列信息
  • 第三部分:以+开始,后面可再接与第一部分相同的序列标识符或者描述信息。一般都只是一个+
  • 第四部分:以ASCII字符表示第二行碱基序列的测序质量。
fastq文件示例
fastq文件示例

fastq文件示例

其次我可以查询一下哪有已有的工具可以实现,比如:seqtk

seqtk

seqtk 是一款轻量级且高效的生物信息学工具,专门用于处理 FASTA/Q 格式的序列文件(如测序数据)。它由 Heng Li(李恒,SAMtools、BWA 等工具的作者)开发,广泛应用于序列数据预处理、格式转换、随机抽样等场景。

如何安装

安装非常简单,从Github下载压缩包,解压,编译即可。当然也可以使用Conda安装。

代码语言:javascript
复制
##编译安装
wget -c https://github.com/lh3/seqtk/archive/refs/tags/v1.4.tar.gz
tar -xf v1.4.tar.gz

cd seqtk-1.4/
make


##方法二:
conda activate RNAseq
conda install -y seqtk
安装
安装

安装

随机抽样

代码语言:javascript
复制

# 随机抽取 10000 条 reads(设置随机种子 -s 避免重复)
seqtk sample -s 123 SRR23698412_1.fastq.gz 10000 > SRR23698412_1_subset.fastq
seqtk sample -s 123 SRR23698412_2.fastq.gz 10000 > SRR23698412_2_subset.fastq

注意:对双端文件(如 sample_1.fastq.gz 和 sample_2.fastq.gz)抽样时,需使用相同的随机种子(-s 参数),确保配对的 reads 被同步抽取。

抽样示例
抽样示例

抽样示例

其余用法:

FASTQ 转 FASTA

保留序列名称和质量值信息(可选):

代码语言:javascript
复制
seqtk seq -A input.fastq.gz > output.fasta
截取序列子区间

提取每条序列的第 10 到 100 个碱基:

代码语言:javascript
复制
seqtk subseq input.fasta 10-100 > output_sub.fasta
过滤短序列

保留长度 ≥ 50 bp 的序列:

代码语言:javascript
复制
seqtk seq -L 50 input.fastq.gz > filtered.fastq
合并双端数据

将双端 FASTQ 文件合并为交错格式(interleaved):

代码语言:javascript
复制
seqtk mergepe sample_1.fastq sample_2.fastq > merged.fastq
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-02-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信菜鸟团 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • FastQ文件
  • seqtk
    • 如何安装
    • 随机抽样
    • 其余用法:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档