拆分数据

目标:我有个a_1.fq.zg和 a_2.fq.zg 都是2G 测序的双端文件,我想把他拆分成俩个文件,拆分成1.6G,b_1.fq.zg和 1.6G b_2.fq.zg;以及 0.4G c_1.fq.zg和0.4G c_2.fq.zg,保证拆分后的文件仍然是配对的,可以进行mapping,提供具体软件进行操作。

1. 计算行数

zcat 5_24h_R1.raw.fq.gz | wc -l
109656520

2 由于 FASTQ 文件中每个序列占 4 行,所以总共的 序列数(reads) 计算如下:

109,656,520 ÷ 4 = 27,414,130 序列

目标拆分
你希望拆分成:

1.6G 部分(约 80%)
0.4G 部分(约 20%)
按照比例:
80% 部分:27,414,130 × 0.8 ≈ 21,931,304 序列
20% 部分:27,414,130 × 0.2 ≈ 5,482,826 序列

3. 使用 seqkit split2 进行拆分

seqkit split2 -1 5_24h_R1.raw.fq.gz -2 5_24h_R2.raw.fq.gz -s 21931304 -O output_dir

seqkit split2 不能同时处理两个文件,你需要用 -1 和 -2 选项分别指定双端数据。

结果

拆分后的文件会存放在 output_dir/ 目录下,生成:

output_dir/
    5_24h_R1.part_001.fq.gz  5_24h_R2.part_001.fq.gz  # ≈ 1.6G
    5_24h_R1.part_002.fq.gz  5_24h_R2.part_002.fq.gz  # ≈ 0.4G
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容