美文网首页Bioinformatics入门实战精通大百科Bio-Information
生物信息-测序数据的获取、 格式转换和质控

生物信息-测序数据的获取、 格式转换和质控

作者: Lillian李李安 | 来源:发表于2018-12-19 12:06 被阅读446次

    一,下载软件Aspera

    • 简介:Aspera是一款高速传输软件,不受文件大小,网络条件等影响,速度比HTP和FTTP协议快数百倍。Windows和Linux系统均可下载使用。

    1.Windows下载:浏览器直接搜索Aspera-connect下载浏览器插件。
    2.Ubuntu下载:

    1.下载Aspera-connec:wget https://download.asperasoft.com/download/sw/connect/3.6.2/aspera-connect-3.6.2.117442-linux-64.tar.gz 
    2.解压缩:tar zvxf aspera-connect-3.6.2.117442-linux-64.tar.gz
    3.运行:sh aspera-connect-3.6.2.117442-linux-64.sh
    (此时在home目录下会生成 `.aspera` 的隐藏文件,使用 ls -a 命令可查看)
    4.添加环境变量:echo 'export PATH=~/.aspera/connect/bin:$PATH' >>~/.bashrc
    5.使其生效:source ~/.bashrc
    6.拷贝秘钥文件:cp ~/.aspera/connect/etc/asperaweb_id_dsa.openssh ~/
    7.拷贝协议文件:sudo cp ~/.aspera/connect/etc/aspera-license /usr/local/bin/
    
    • Aspera命令行工具的使用:ascp [参数] 目标文件 目的地址

    • ascp常用参数:

    1. -T ---- 取消加密。若不添加此参数,可能会下载不了。 
    2. -i ---- 输入私钥,一般不要少。安装 aspera 后在目录 ~/.aspera/connect/etc/ 下有几个私钥, 使用 linux 服务器的时候一般使用 asperaweb_id_dsa.openssh 文件作为私钥。 
    3. -l string ----- 设置最大传输速度,比如设置为 200M 则表示最大传输速度为 200m/s。 若不设置该参数,则一般可达到10m/s的速度,而设置了,传输速度可以更高。
    4. -k ---- 断点续传 ,一般设置为1
    5. -v ---- 可以实时知道程序在做什么,方便查错
    6. -Q --- 一般加上吧
    7. --host=string --- ftp的host名,NCBI的为ftp-private.ncbi.nlm.nih.gov;EBI的为 fasp.sra.ebi.ac.uk。 
    8. --user=string --- 用户名,NCBI的为anonftp,EBI的为era-fasp。 
    9. --mode=string --- 选择模式,上传为 send,下载为 recv。 
    10. --file-list --- 批量下载SRA文件的路径

    二,在SRA数据库中下载数据

    • 简介:SRA数据库是用于存储二代测序的原始数据的数据库。除了原始序列数据外,SRA现在也存在raw reads在参考基因的比对信息。
    • 根据SRA数据产生的特点,将SRA数据分为四类:
      Studies-- 研究课题,用前缀ERP或SRP表示
      Experiments-- 实验设计,用前缀SRS表示
      Runs-- 测序结果集,用前缀SRX表示
      Samples-- 样品信息。用前缀SRR表示
    • SRA中数据结构的层次关系为:Studies->Experiments->Samples->Runs

    1、使用Aspera获取单个SRA数据:

    1. 首先知道SRA数据库数据的存放地址是ftp-private.ncbi.nlm.nih.gov,使用时加上ftp://或者http://,SRA在Aspera的用户名是anonftp
    2. 通过输入上述链接(这是已知accession no.的情况下可以直接查找,不知道accession no.的可以去SRA主页查找)然后逐步定位到需要查找的accession no,获得链接。
    3. 以 SRR6208854为例,可以得到链接ftp://ftp.ncbi.nlm.nih.gov/sra/srainstant/reads/ByRun/sra/SRR/SRR620/SRR6208854/SRR6208854.sra
      ftp://ftp.ncbi.nlm.nih.gov改为anonftp@ftp-private.ncbi.nlm.nih.gov:/注意不要少了:
    4. 完整代码如下:
    ascp -v -i ~/.aspera/connect/etc/asperaweb_id _dsa.openssh -T -k 1 -l 200m anonftp@ftp-private.ncbi.nlm.nih.gov:/sra/srainstant/reads/ByRun/sra/SRR/SRR620/SRR62088 54/SRR6208854.sra ./ 
    

    2、使用Aspera批量下载SRA数据

    1. 输入vi sra_list.txt 或 nano sra_list.txt 
    2. 输入下载链接,并保存,例如/sra/srainstant/reads/ByRun/sra/SRR/SRR623/SRR6232298/ SRR6232298.sra h和/sra/srainstant/reads/ByRun/sra/SRR/SRR623/SRR6232299/ SRR6232299.sra 
    3. 运行:ascp -T -i  ~/.aspera/connect/etc/asperaweb_id_ds a.openssh -k 1 -l 200m --mode recv --host ftpprivate.ncbi.nlm.nih.gov --user anonftp --filelist ./sra_list.txt ./ 
    

    三、sra toolkit的下载和使用

    • 简介:用于下载处理SRA文件,各种数据格式转换的工具包 。

    • 常用工具
      --fastq-dump: Convert SRA data into fastq format(将SRA格式转换为fastq格式)
      --prefetch: Allows command-line downloading of SRA, dbGaP, and ADSP data

    • 安装

    1. 下载:wget https://ftptrace.ncbi.nlm.nih.gov/sra/sdk/2.9.2/sratoolkit.2.9.2ubuntu64.tar.gz  
    不清楚版本可将 2.9.2 替换成 current 。
    
    • 链接的查找方法---在SRA-NCBI主页点击download sra toolkit,进去后选中Ubuntu Linux 64 bit architecture,一种方法是点击右键,选择检查元素,就可以找到链接。另一种方法是选择Ubuntu Linux 64 bit architecture,并复制,粘贴时就可以显示链接(简书里的markdown就可以显现,无意中发现的哈哈)
    2. 解压缩:tar zvxf sratoolkit.2.9.2-ubuntu64.tar.gz -C ~/Biosofts/  解压缩到指定目录
    3. 添加环境变量:echo 'export PATH=~/Biosofts/sratoolkit.2.9.2ubuntu64/bin:$PATH'  >> ~/.bashrc 
    4. 使其生效:source ~/.bashrc
    5. 检查: prefetch -h
    

    3.1、使用Prefetch下载sra文件

    以 SRR6232298为例

    prefetch SRR6232298
    

    软件会自动建立~/ncbi/public/sra文件夹,sra文件

    3.2、使用fastq-dump,将SRA文件解压为fastq

    • 用程序fastq-dump来把文件拆包,从NCBI下下来的数据,双端测序数据是放在一个文件里的,所以需要把它们重新拆解为两个文件
    • fastQ格式:是序列格式中常见的一种,一般都包含有四行。
    1. 第一行由'@'开始,后面跟着序列的描述信息,这点跟fasta格式是一样的。
    2. 第二行是序列。
    3. 第三行由'+'开始,后面也可以跟着序列的描述信息。
    4. 第四行是第二行序列的质量评价字符数跟第二行的序列是相等的。
    • 解压单个sra文件:

    拆包文件:fastq-dump --split-files SRR6232298.sra 
    

    还可以压缩为gzip文件,节省空间:

    fastq-dump --gzip --split-files SRR6232298.sra 
    
    • 批量解压sra文件:

    #!/bin/sh 
    for i in *sra
    do 
    echo $i 
    fastq-dump --gzip --split-files $i 
    done 
    
    • #!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊的表示符,其后面跟的是此解释此脚本的shell的路径。脚本的内容是由解释器解释的,我们可以用各种各样的解释器来写对应的脚本.

    四,NGS介绍

    • 简介:
    1. 二代测序技术(NGS--next generation sequencing):也叫下一代测序技术,相较于第一代测序技术测序通量提高了不少。基本原理是边合成边测序,在Sanger测序方法的基础上,通过技术创新,用不同颜色的荧光标记四种不同的dNTP,当DNA聚合酶合成时,每添加一种dNTP就会释放出不同的荧光,根据捕捉的荧光信号并经过特定的计算机软件处理,从而获得待测DNA的序列信息。
      其中illumina的测序,可以有single end和paired end两种,分别从一端和两端进行测序。具体情况可以查看www.bio-info-trainee.com/298.html这篇文章
    2. 基本概念介绍:
    • flowcell:指illumina测序时,测序反应发生的位置,一个flowcell有8个lane(泳道)
    • tail:每一次测序荧光扫描的最小单位,每个tile上分布数 目繁多的簇结合位点
    • reads:指测序的结果,一条序列称作一条reads
    • junction:指进行双端测序时,中间会有200bp测不到的序列
    • adapter:测序时需要的一段特定序列
    • Pair-end 和 single-end:双端和单端测序
    1. 基本流程介绍:
    • 构建样本文库--Library Preparation
      首先将基因组DNA随机打断,片段化成几百碱基或更短的小片段,其次使用酶补平末端不平整的片段,并在两头加上特定的接头Adaptor,adapter包含两部分,分别是测序和建库扩增时的引物序列。然后在进行pcr扩增。
    • 桥式pcr,也就是簇生成--Cluster Generation
      将上述DNA样品调整到合适的浓度加入到flowcell中,从而序列的一端与flowcell上面的接头(oligos-p5和p7)进行杂交,连接以后就正式开始桥式PCR。
      首先进行第一轮扩增,将序列补成双链,然后加入 NaOH强碱性溶液破坏DNA的双链,并洗脱,洗掉模板链。然后加入缓冲溶液,这时候序列自由端的部分就会和旁边的adpater进行匹配进行一轮PCR,在PCR的过程中,序列是弯成桥状,所以叫桥式PCR,一轮桥式PCR可以使得序列扩增1倍,如此循环下去,然后切掉并冲走一种链,就会得到一个具有完全相同序列的簇,叫cluster (这段可以找NGS测序视频看)
    • 测序--Sequencing
      单侧测序(SE)、双侧测序(PE)、配对测序(ME)、多重测序
      加入特殊处理过的A,T,G,C四种碱基,一轮测序保证只有一个碱基加入当前的测序链,随后加入试剂,使脱氧核糖3号位的的基团变为-OH,然后切掉部分荧光基团,使其在下一轮反应中,不会发出荧光。
    • 序列分析--Data Analysis
    1. 测序读长短的原因:
    • 测序时会有不同步的情况。当测序长度不断延 长,这个杂信号会越来越多,最后很有可能出 现,50个红,50个绿色,这时候我们判断不出 来到底是什么碱基被合成。
    • 测序过程中,使用的碱基是特殊处理的,有一 个非常大的荧光基团修饰。在使用DNA polymerase的时候,酶的状态也会受到底物的 影响,越来越差。
    1. 质量评分:
      指的是一个碱基的错误概率的对数值。
      为了便于序列存储,通常采用单字符来标示序列的质量值。其质量得分与错误概率的对应关系见下表
    Quality Score Probability of incorrect base call Base call accuracy
    10 1 in 10 90%
    20 1 in 100 99%
    30 1 in 1000 99.9 %
    40 1 in 10000 99.99 %
    50 1 in 100000 99.999 %

    把这个Quality value加上33或者64转成一个新 的数值,称为Phred,最后把Phred用对应的 ASCII字符表示。

    五、质控:

    • FastQC介绍:用于测序数据质控的软件,也就是对数据质量进行评估,是一个java软件,下载后可以直接使用(免安 装编译),但是需要自行配置好java环境 。

    5.1安装Java

    1. 下载jdk8
    1. 登录linux系统,进到usr目录下建立Java目录
    sudo mkdir  java (要先进入usr目录)
    
    1. 解压缩
    • 一种方法是将jdk-8u60-linux-x64.tar.gz拷贝到java目录下,再解压缩
    1. cp /mnt/hgfs/linux/jdk-8u60-linux-x64.tar.gz /usr/java/
    2. tar -zxvf jdk-8u60-linux-x64.tar.gz
    

    *一种方法是直接解压缩,使用参数

     sudo  tar -zvxf  ~/sf_Linux/Biosoft/jdk-8u172-linux-x64.tar.gz -C /usr/java/  
     (注意路径要根据情况变化)
    
    1. 进入/uer/java/目录(注意:可能使用ls命令找不到Java目录,可以尝试使用find命令查找,如find -name java,然后进去的时候输入相应路径就可以)
    sudo cd /usr/java(路径可能会有不同) 
    
    1. 建立链接,节省目录长度
    sudo ln -s jdk1.8.0_172   latest 
    sudo ln -s /usr/java/latest  default  
    
    1. 加入环境变量
    sudo vi /etc/profile  
    末尾加上如下几行  
    export JAVA_HOME=/usr/java/latest  
    export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH  
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
    

    安装Java可以查看这篇文章:https://www.cnblogs.com/zeze/p/5902124.html

    1. 使其生效
    source /etc/profile  
    
    1. 检查
    java -version 
    

    当出现以下情况时说明安装成功:

    java version "1.8.0_60"
    Java(TM) SE Runtime Environment (build 1.8.0_60-b27)
    Java HotSpot(TM) Client VM (build 25.60-b23, mixed mode)
    

    如果没有出现,可能是因为没有安装default,按照屏幕上的命令安装default就可以了,然后在执行Java-version就行了。

    5.2 安装FastQC

    5.2.1 安装--按照下列步骤一步步操作

    1. 下载:wget http://www.bioinformatics.babraham.ac.uk/projects/fastqc/f astqc_v0.11.7.zip 
    2. 解压到目录下:unzip ~/Biosofts/fastqc_v0.11.7.zip -d ~/Biosofts/  (注意,路径会有所不同) 
    4. 检查是否解压成功:~/Biosofts/FastQC/fastqc  -h 
    5. 加入环境变量:echo 'export PATH=~/Biosofts/FastQC:$PATH'  >>~/.bashrc 
    6. 使其生效:source ~/.bashrc 
    7. 检查:fastqc -h 
    

    其实也可以直接使用sudo apt-get install fastqc直接下载。

    5.2.2 使用:

    可以看这篇文章:https://zhuanlan.zhihu.com/p/20731723

    *使用格式:fastqc [-o output dir] [--(no)extract] [-f fastq|bam|sam] [-c contaminant file] seqfile1 .. seqfileN

    • 介绍参数
    1. -o --outdir FastQC生成的报告文件的储存路径,生成的报告的文件名是根据输入来定的
    2. --extract 生成的报告默认会打包成1个压缩文件,使用这个参数是让程序不打包
    3. -t --threads 选择程序运行的线程数,每个线程会占用250MB内存,越多越快
    4. -c --contaminants 污染物选项,输入的是一个文件,格式是Name [Tab] Sequence,里面是可能的污染序列,如果有这个选项,FastQC会在计算时候评估污染的情况,并在统计的时候进行分析,一般用不到
    5. -a --adapters 也是输入一个文件,文件的格式Name [Tab] Sequence,储存的是测序的adpater序列信息,如果不输入,目前版本的FastQC就按照通用引物来评估序列时候有adapter的残留
    6. -q --quiet 安静运行模式,一般不选这个选项的时候,程序会实时报告运行的状况。
    • 下面以上课时用的一个例子简单说下:
    1.直接分析: fastqc Akle_TTAGGC_L004_R2_001.fastq.gz 
    

    2.会生成两个文件,后缀名分别为.html 和.zip

    将.html文件传到Windows上查看,可以得到图表化的fastqc报告

    5.3数据过滤

    • 数据过滤:用来切除接头序列和低质量碱基
      目前也已有很多工具:Trimmomatic、seqtk、 cutadapt、 bbduk(BBmap)
    5.2.1 Trimmomatic的使用:
    • 简介:Trimmomatic 是一个广受欢迎的 Illumina 平台数据过滤工具。Trimmomatic 支持多线程,处理数据速度快,主要用来去除 Illumina 平台的 Fastq 序列中的接头,并根据碱基质量值对 Fastq 进行修剪
      软件有两种过滤模式,分别对应 SE 和 PE 测序数据,同时支持 gzip 和 bzip2 压缩文件,另外也支持 phred-33 和 phred-64 格式互相转化。
    • 下载与安装:
    1. 下载: –wget http://www.usadellab.org/cms/uploads/supplementary/ Trimmomatic/Trimmomatic-0.38.zip 
    2. 安装: –unzip Trimmomatic-0.38.zip -d ~/Biosofts/Trimmomatic038/ 
    3. 运行: –java -jar ~/Biosofts/Trimmomatic038/Trimmomatic0.38/trimmomatic-0.38.jar 
    

    具体用法可以参考这篇文章:https://www.jianshu.com/p/a8935adebaae

    5.2.2 Seqtk 安装与下载
    • 安装
    sudo apt-get install seqtk 
    

    上面这个命令我执行了没用,但是出现了sudo apt autoremove,我去查了一下资料,发现不要乱使用这个命令,不然系统会删掉很多软件。
    然后,我去浏览器直接下载了软件,链接为http://github.com/lh3/seqtk,接着去解压缩,命令为unzip seqtk-master.zip

    • 用途:
      seq 主要功能都在这个选项中,也是最常用的一项 
      sample 用于抽样 
      subseq 提取序列 
      fqchk fastq质量评估 
      mergepe 合并pairend reads 
      trimfq 很明显是截取fastq 
      hety 计算某个区域杂合性,筛选杂合位点
      gc 识别高低gc区域 
      mutfa 标记出高变区 
      mergefa 合并fastq或者fasta文件 
      famask 屏蔽fasta文件,比如将重复区用字母替换为X,这些区域不参与变异检测
      dropse 丢掉不是pair end的reads 
      rename 修改序列ID,比如将ID中的chr全部去掉 
      randbase 随机选取碱基 
      cutN 根据N区域截取序列 
      listhet 提取杂合位点的位置,DNA序列中,可以用非ATCGN的字母表示杂合位点, listhet可以将这些位点位置列出来。

    相关文章

      网友评论

        本文标题:生物信息-测序数据的获取、 格式转换和质控

        本文链接:https://www.haomeiwen.com/subject/clpncqtx.html