加载中…
个人资料
Mars-Zhan
Mars-Zhan
  • 博客等级:
  • 博客积分:0
  • 博客访问:1,933
  • 关注人气:52
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

fastxtoolkit的安装与使用

(2014-09-13 18:01:03)
标签:

fastxtoolkit

分类: biology
fastxtoolkit是一款对下一代测序数据预处理的软件
下载:http://hannonlab.cshl.edu/fastx_toolkit/
一。主要内容与安装如下:
  • FASTQ-to-FASTA converter
    Convert FASTQ files to FASTA files.(fastq转换为fasta)
  • FASTQ Information
    Chart Quality Statistics and Nucleotide Distribution(fastq信息即测序中reads质量和核酸分布)
  • FASTQ/A Collapser
    Collapsing identical sequences in a FASTQ/A file into a single sequence (while maintaining reads counts)(合并FASTQ/A文件中相同的reads为一个reads)
  • FASTQ/A Trimmer
    Shortening reads in a FASTQ or FASTQ files (removing barcodes or noise).(去除fasta、fastq文件中barcodes或noise,具体参考下文)
  • FASTQ/A Renamer
    Renames the sequence identifiers in FASTQ/A file.(重新命名FASTQ/A中序列的名字)
  • FASTQ/A Clipper
    Removing sequencing adapters / linkers(去除FASTQ/A文件中的接头序列或引物)
  • FASTQ/A Reverse-Complement
    Producing the Reverse-complement of each sequence in a FASTQ/FASTA file.(在FASTQ/A中产生与每个reads反向互补的序列)
  • FASTQ/A Barcode splitter
    Splitting a FASTQ/FASTA files containning multiple samples(删除包含多个样本的FASTQ/A文件中barcode)
  • FASTA Formatter
    changes the width of sequences line in a FASTA file
  • FASTA Nucleotide Changer
    Convets FASTA sequences from/to RNA/DNA
  • FASTQ Quality Filter
    Filters sequences based on quality(去除文件中低碱基质量分数的reads)
  • FASTQ Quality Trimmer
    Trims (cuts) sequences based on quality(去除文件reads中低质量碱基)
  • FASTQ Masker
    Masks nucleotides with 'N' (or other character) based on quality

它在linux下安装需要安装库,具体例子:可以直接网站下载,也可以如下下载:
## Download pre-compiled binaries, put them in /usr/local/bin
 ## $ mkdir fastx_bin
# cd fastx_bin
$ wget http://hannonlab.cshl.edu/fastx_toolkit/fastx_toolkit_0.0.13_binaries_Linux_2.6_amd64.tar.bz2
$ tar -xjf fastx_toolkit_0.0.13_binaries_Linux_2.6_amd64.tar.bz2
$ sudo cp ./bin/* /usr/local/bin
解压后:
cd libgtextutils-0.6.1
./configure (若在服务器等环境下,你没有root权限记得修改环境变量:--prefix=/你设置的路径/)
make(若存在不少make是:Nothing to be done for `install-exec-am'和Nothing to be done for `all-am'一开始以为是错误,其实可以忽忽略置之不理)
make install(若最后发现了Nothing to be done for `install-exec-am'做同上处理,可以忽略)
无论是编译还是make或安装make install都要注意查看是否有error)

接下来,安装fastxtoolkit,一定要先设置pkg-config(它的含义参考其他博文)
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH(修改环境变量,若你之前修改了libgtextutils的路径,那你这个的修改为你设置的路径(这个路径就是你编译libgtextutils时修改的路径:--prefix=/你设置的路径/)。
cd ../fastx_toolkit
./configure
make
make install

小技巧:
编译时,往往不知道是否成功编译通过,而编译没有通过就去make install 
必然会出错,增加了解决问题的复杂性,可以通过下面方法检查是否编译成功: 
一:编译完成后,输入echo $? 如果返回结果为0,则表示正常结束,否则就出错了 :( 
echo $? 表示 检查上一条命令的退出状态,程序正常退出 返回0,错误退出返回非0。 
二:编译时,可以用&&连接命令, && 表示"当前一条命令正常结束,后面的命令才会执行",就是"与"啦。 
这个办法很好,即节省时间,又可防止出错。例: 
./configure --prefix=/usr && make && make install


一定要先安装libgtextutils,否者会出现以下错误
checking for GTEXTUTILS... configure: error: Package requirements (gtextutils) were not met:
No package 'gtextutils' found


二。fastaxtoolkit使用

1. fastq_quality_converter [-h] [-a] [-n] [-z] [-i INFILE] [-f OUTFILE] 直观观察质量值
   [-h]         =打印帮助
   [-a]         输出ASCII的质量得分(默认).
   [-n]         输出质量值数据.
   [-z]         GZIP压缩输出.
   [-i INFILE]  输入fasta/fastq格式的文件.
   [-o OUTFILE] 输出fasta/fastq文件. 


2.  fastq_masker [-h] [-v] [-q N] [-r C] [-z] [-i INFILE] [-o OUTFILE]屏蔽低质量碱基
   [-q N]     =质量门限值,质量值低于这个门限值的将被mask掉,默认值为10
   [-r C]       用C替代低质量的碱基,默认用N来替代
   [-z]          输出用GZIP压缩.
   [-i INFILE]  输入FASTA文件
   [-o OUTFILE] 输出文件
   [-v]         详细-报告序列编号,如果使用了-o则报告会直接在STDOUT,如果没有则输入到STDERR


3. fastq_quality_filter [-h] [-v] [-q N] [-p N] [-z] [-i INFILE] [-o OUTFILE]过滤低质量序列
   [-q N]       最小的需要留下的质量值
   [-p N]       每个reads中最少有百分之多少的碱基需要有-q的质量值  
   [-z]         =压缩输出
   [-v]       =详细-报告序列编号,如果使用了-o则报告会直接在STDOUT,如果没有则输入到STDERR

   [-i INFILE]  = FASTA/Q input file. default is STDIN.  输入文件
   [-o OUTFILE] = FASTA/Q output file. default is STDOUT.  输出文件


4. fastq_quality_trimmer [-h] [-v] [-t N] [-l N] [-z] [-i INFILE] [-o OUTFILE] 剪reads的末端
   [-t N]       从5'端开始,低与N的质量的碱基将被修剪掉
   [-l N]       修建之后的reads的长度允许的最短值            
   [-z]         压缩输出
   [-v]       =详细-报告序列编号,如果使用了-o则报告会直接在STDOUT,如果没有则输入到STDERR


5. fastq_to_fasta [-h] [-r] [-n] [-v] [-z] [-i INFILE] [-o OUTFILE]  fastq转换成fasta
   [-r]          序列用序号重命名
   [-n]         保留有N的序列,默认不保留
   [-z]         压缩输出

若用-r和-n,则

@SRR1174233.392 HWI-1116:76:D0LVDACXX:3:1101:14764:2007 length=100
NCTACTGAGTTTCCACACTGCATACCTTAGGTCTTCCGAATTCGAAGTTAATTTGCAAGATGGCTAAGGAAAAGGCTCAGATCAACATTGTGGTGGTTGG
+SRR1174233.392 HWI-1116:76:D0LVDACXX:3:1101:14764:2007 length=100
#1=DFFFFHHHHHJIJJJJJJIJJJIJJJJJFIJJJIJGIJJJIGIJGHIIJIJJIJIIJJIJJJIIJJIHIGGECDFFFFDECDDCDDCDCBDDDDDD>
@SRR1174233.404 HWI-1116:76:D0LVDACXX:3:1101:15379:2013 length=100
NTCCAGACATAGTAAGGATTTGTCTGGTTAATTCCGTTAACGAACGAGACCTCAGCCTGCTAAATAGCTATGTGGAGGTAACCCTCCACGGCCAGCTTCT
+SRR1174233.404 HWI-1116:76:D0LVDACXX:3:1101:15379:2013 length=100
#4=DDFFFHHHHHJIJJIJIJJIGJJJHIJJJJIIJJJJIIIJJJJIGHIIHJIIIIGGII:DECHFGHGFDDDFF?BAAC>@=AA@DD?BBBDDDCCDD
结果是:

>1
NCTACTGAGTTTCCACACTGCATACCTTAGGTCTTCCGAATTCGAAGTTAATTTGCAAGATGGCTAAGGAAAAGGCTCAGATCAACATTGTGGTGGTTGG
>2
NTCCAGACATAGTAAGGATTTGTCTGGTTAATTCCGTTAACGAACGAGACCTCAGCCTGCTAAATAGCTATGTGGAGGTAACCCTCCACGGCCAGCTTCT

若只用-n,则结果是:

>SRR1174233.392 HWI-1116:76:D0LVDACXX:3:1101:14764:2007 length=100
NCTACTGAGTTTCCACACTGCATACCTTAGGTCTTCCGAATTCGAAGTTAATTTGCAAGATGGCTAAGGAAAAGGCTCAGATCAACATTGTGGTGGTTGG
>SRR1174233.404 HWI-1116:76:D0LVDACXX:3:1101:15379:2013 length=100
NTCCAGACATAGTAAGGATTTGTCTGGTTAATTCCGTTAACGAACGAGACCTCAGCCTGCTAAATAGCTATGTGGAGGTAACCCTCCACGGCCAGCTTCT

6. fastx_trimmer [-h] [-f N] [-l N] [-t N] [-m MINLEN] [-z] [-v] [-i INFILE] [-o OUTFILE]从3'开始到5'哪些部分保留

   [-f N]       从第几个碱基开始保留,默认第一个
   [-l N]       后面从第几个碱基开始保留,默认全部碱基都保留.
   [-t N]       =序列尾部修剪掉N个碱基.
   [-m MINLEN]  修剪掉长度小于MINLEN的序列.


7.  fastx_quality_stats [-h] [-N] [-i INFILE] [-o OUTFILE] fastq文件的质量值进行统计
   [-i INFILE]      输入fastq文件
   [-o OUTFILE] 输出的文本文件名字
   [-N]                 =使用新的输出格式,默认使用老格式
老格式输出文件:下面一行代表输出文件的一列
        column=1到36
        count   这列有多少碱基
        min       这列的碱基质量最小值
        max     这列的碱基质量最大值
        sum     这列的碱基质量的总和
        mean   =这列的碱基质量平均值
        Q1       1/4碱基质量值
        med     碱基质量值的中位数
        Q3      3/4碱基质量值.
        IQR     Q3-Q1
        lW      'Left-Whisker' value (for boxplotting).
        rW      'Right-Whisker' value (for boxplotting).
        A_Count =本列A的数目
        C_Count 本列C的数目.
        G_Count 本列G的数目.
        T_Count 本列T的数目.
        N_Count =本列N的数目.
        max-count =碱基数目的最大值
新的输出格式:
        循环数
        最大数目
        对每个循环的碱基 (ALL/A/C/G/T/N):
                count   本列碱基的数目
                min       本列碱基质量的最小值
                max     本列碱基质量的最大值.
                sum     本列碱基质量的综合.
                mean    本列碱基质量的平均值
                Q1      1/4碱基质量值
                med    碱基质量值的中位数
                Q3      3/4碱基质量值
                IQR     Q3-Q1
                lW      'Left-Whisker' value (for boxplotting).
                rW      'Right-Whisker' value (for boxplotting).


8. fastq_quality_boxplot_graph.sh [-i INPUT.TXT] [-t TITLE] [-p] [-o OUTPUT]绘制碱基质量分布盒式图
  [-p]         =产生.PS文件,默认产生png图像
  [-i INPUT.TXT]=输入文件为 fastx_quality_stats的输出文件
  [-o OUTPUT]  =输出文件的名字
  [-t TITLE]        =输出图像的标题


9. fastx_nucleotide_distribution_graph.sh [-i INPUT.TXT] [-t TITLE] [-p] [-o OUTPUT]绘制碱基分布图
  [-p]          =产生.PS文件,默认产生png图像.
  [-i INPUT.TXT] =输入文件为 fastx_quality_stats的输出文件
  [-o OUTPUT]   =输出文件的名字.
  [-t TITLE]       =输出图像的标题


10. fastx_clipper [-h] [-a ADAPTER] [-D] [-l N] [-n] [-d N] [-c] [-C] [-o] [-v] [-z] [-i INFILE] [-o OUTFILE] 去掉接头序列
   [-a ADAPTER] =接头序列(默认为CCTTAAGG)
   [-l N]       忽略那些碱基数目少于N的reads,默认为5
   [-d N]       保留接头序列后的N个碱基默认  -d 0
   [-c]         放弃那些没有接头的序列.
   [-C]         只保留没有接头的序列.
   [-k]         报告只有接头的序列.
   [-n]         保留有N多序列,默认不保留
   [-v]         = Verbose - report number of sequences. 报道序列的个数
                  If [-o] is specified,  report will be printed to STDOUT.
                  If [-o] is not specified (and output goes to STDOUT),
                  report will be printed to STDERR.=详细-报告序列编号
   [-z]         =压缩输出.
   [-D]       输出调试结果.
   [-M N]   =要求最小能匹配到接头的长度N,如果和接头匹配的长度小于N不修剪
   [-i INFILE]  = FASTA/Q input file. default is STDIN.  输入文件
   [-o OUTFILE] = FASTA/Q output file. default is STDOUT. 输出文件



0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有