首页 > 其他分享 >fqkit: 一个处理fastq序列的小工具 (一)

fqkit: 一个处理fastq序列的小工具 (一)

时间:2023-10-15 11:34:01浏览次数:42  
标签:fq read fastq reads base file 序列 fqkit

一个用于处理fastq测序文件的命令行小工具,功能还在不断更新中,子命令也不多,支持gzip压缩文件的输入和输出(结果文件名以.gz结尾,结果会自动压缩)。

reop:

https://github.com/sharkLoc/fqkit

install:

cargo install fqkit

usage:

fqkit: a simple program for fastq file manipulation

Usage: fqkit [OPTIONS] <COMMAND>

Commands:
  topn
          get first N records from fastq file
  subfq
          subsample sequences from big fastq file
  search
          search reads/motifs from fastq file
  stats
          summary for fastq format file
  plot
          line plot for A T G C N percentage in read position
  fq2fa
          translate fastq to fasta
  barcode
          split barcode for PE reads
  remove
          remove reads by read name
  split
          split interleaved fastq file
  merge
          merge PE reads as interleaved fastq file
  split2
          split fastq file by records number
  gcplot
          get GC content result and plot
  help
          Print this message or the help of the given subcommand(s)

Options:
  -q, --quiet
          be quiet and do not show extra information
  -h, --help
          Print help
  -V, --version
          Print version

topn:

输出一个fq文件的前N个reads,-n 参数指定数量; -q参数关闭日志
image

subfq:

从一个fq文件中随机抽取指定数量的reads数(蓄水池算法),如果是超大文件且抽取的read数很多可以指定-r参数节省内存,但是会增加耗时;-q参数关闭日志
image

从fq文件中搜索含有目标pattern/motif的reads,参数-p指定pattern/motif(需要大写),支持正则表达式传入模式;-q参数关闭日志
image

stats:

统计fq文件基本信息,包括每个cycle每个位置测序质量分数的计数
summary.txt:基本信息汇总:

read average length:    126
read max length:        126
total gc content(%):    57.52
total read count:       2000
total base count:       252000

base A count:   53864   (21.37%)
base T count:   53136   (21.09%)
base G count:   70989   (28.17%)
base C count:   73967   (29.35%)
base N count:   44      (0.02%)

Number of base calls with quality value of 20 or higher (Q20+) (%)      237670  (94.31%)
Number of base calls with quality value of 30 or higher (Q30+) (%)      223461  (88.67%)

cycle.txt: 每个cycle每个位置测序质量分数的计数
image

plot:

stats命令结果的可视化,可以输出png和svg格式的图片:
image
添加参数-s还可以在终端上显示每个位置ATGCN的含量比例:
image

fq2fa:

fq文件转fasta格式

barcode:

混库测序按照barcode序列拆分个体样本

remove:

从fq文件中按照read name移除reads,参数-n指定含有read name的文件,一行一个,且不包含read name前缀符号@

merge:

将PE测序的reads交替合并成一个fq文件

split:

merge命令的逆操作

gcplot:

输出fq文件的gc含量结果并作图
image
指定参数-s可在终端上显示GC含量分布的柱状图
image
参数-o指定输出GC含量文件,从GC含量0%到100%范围内每个百分比下的reads的数量和比例
image

标签:fq,read,fastq,reads,base,file,序列,fqkit
From: https://www.cnblogs.com/mmtinfo/p/17765359.html

相关文章

  • php反序列化键值逃逸
    又遇到键值逃逸了。这里提前说一下我的理解吧,这次理解比上几次遇到字符串逃逸还要深刻一点。譬如这次我是先写逃逸payload,然后使用"}; 闭合第一个逃逸部分,然后在后续插入新的字符串,也就是更改可控值,再用一次 "};闭合后续字符串。 详细的看题目吧。来自:[0CTF2016]piapiap......
  • 2023-10-14:用go语言,给定 pushed 和 popped 两个序列,每个序列中的 值都不重复, 只有当它
    2023-10-14:用go语言,给定pushed和popped两个序列,每个序列中的值都不重复,只有当它们可能是在最初空栈上进行的推入push和弹出pop操作序列的结果时,返回true;否则,返回false。输入:pushed=[1,2,3,4,5],popped=[4,5,3,2,1]。输出:true。来自美团。来自左程云。答案2023-10-......
  • 基因分型数据与碱基序列的输入
    基因分型数据和碱基序列的输入都是对DNA信息的编码,但它们的表达方式和所提供的信息不同。为了理解它们之间的联系,让我们首先明确这两者的定义:基因分型数据:基因分型数据通常是在特定的单核苷酸位置上(即SNP位置)对个体的DNA的描述。每个SNP位置可以有三种情况:两种纯合子和一种杂合......
  • 2023-10-14:用go语言,给定 pushed 和 popped 两个序列,每个序列中的 值都不重复, 只有当它
    2023-10-14:用go语言,给定pushed和popped两个序列,每个序列中的值都不重复,只有当它们可能是在最初空栈上进行的推入push和弹出pop操作序列的结果时,返回true;否则,返回false。输入:pushed=[1,2,3,4,5],popped=[4,5,3,2,1]。输出:true。来自美团。来自左程云。答案......
  • 子序列有关问题总结
    我们定义子序列为:从原序列中选取若干个元素,按原序列的顺序排列的序列。1.最长上升子序列问题给定一个长为\(n\)的序列\(a\),求其中的最长的上升子序列的大小。1.1动态规划做法设\(dp_i\)为以\(a_i\)结尾的最长的上升子序列的大小,则序列\(a\)上最长的上升子序列的大小为\(\mat......
  • # 定义函数,单个自变量+单个序列(独热编码)控制变量 # curve_fit函数要求X中的元素都是
    importnumpyasnpimportpandasaspdfromscipy.optimizeimportcurve_fit#定义函数,单个自变量deffun_exp(X,k):a,x,b=XY=a*np.exp(k*x)+breturnY#读取数据df_test=pd.DataFrame([[300,0,30,300],[3......
  • python实现根据序列ID从fasta文件中删除指定的序列
     001、[root@pc1test1]#lsa.farm.listtest.py[root@pc1test1]#cata.fa##测试fasta>chr1tttcccggg>chr2tttgggjjjcccjjjjjj>chr3ccc>chr4aaaaatt[root@pc1test1]#catrm.list##删除列表chr2chr4[root@p......
  • seqkit 软件根据序列ID删除指定的序列
     001、单个删除(base)[root@pc1test1]#lsa.fa(base)[root@pc1test1]#cata.fa##测试文件>chr1tttcccggg>chr2tttgggjjjcccjjjjjj>chr3ccc>chr4aaaaatt(base)[root@pc1test1]#seqkitgrep-v-p"chr1"a.fa......
  • python实现fasta文件碱基序列每行按照指定数目输出
     001、(base)[root@pc1test1]#lsa.fatest.py(base)[root@pc1test1]#cata.fa##测试fasta>chr1tttcccggg>chr2tttgggjjjcccjjjjjj>chr3ccc>chr4aaaaatt(base)[root@pc1test1]#cattest.py##程序#!/usr/bin/envpython3#......
  • 在Python中使用LSTM和PyTorch进行时间序列预测|附代码数据
    全文链接:http://tecdat.cn/?p=8145最近我们被客户要求撰写关于LSTM的研究报告,包括一些图形和统计输出。顾名思义,时间序列数据是一种随时间变化的数据类型。例如,24小时内的温度,一个月内各种产品的价格,一年中特定公司的股票价格诸如长期短期记忆网络(LSTM)之类的高级深度学习模型能......