RNA-seq(3):sra到fastq格式转换并进行质量控制

把RNA-seq(2)-2下载的sra文件转换为fastq格式的测序文件,并且用fastqc软件测试测序文件的质量,理解各指标的意义。

1 数据解压:用samtools中的fastq-dump将sra格式转为fastq格式

#先启动python3环境
kelly@DESKTOP-MRA1M1F:/mnt/f/rna_seq/data$ source ~/miniconda3/bin/activate
#查看fastqc命令是否有效(注意现在是base环境)
(base) kelly@DESKTOP-MRA1M1F:/mnt/f/rna_seq/data$ fastq-dump -h
#命令1
fastq-dump --gzip --split-3 -O *.sra .
#或者命令2
for id in `seq 56 62`
do
    fastq-dump --gzip --split-3 -O  -A SRR35899${id} .
done
#或者命令3
for ((i=56;i<=62;i++));do fastq-dump --gzip --split-3 -A SRR35899$i.sra -O .;done
注意

A FASTQ file normally uses four lines per sequence.

  • Line 1 begins with a '@' character and is followed by a sequence >identifier and an optional description (like a FASTA title line).
  • Line 2 is the raw sequence letters.
  • Line 3 begins with a '+' character and is optionally followed by the same sequence identifier (and any description) again.
  • Line 4 encodes the quality values for the sequence in Line 2, and must contain the same number of symbols as letters in the sequence. A FASTQ file containing a single sequence might look like this:
@SEQ_ID
GATTTGGGGTTCAAAGCAGTATCGATCAAATAGTAAATCCATTTGTTCAACTCACAGTTT
+
!''*((((***+))%%%++)(%%%%).1***-+*''))**55CCF>>>>>>CCCCCCC65

The character '!' represents the lowest quality while '~' is the highest. Here are the quality value characters in left-to-right increasing order of quality (ASCII):

 !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFG
HIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~

The original Sanger FASTQ files also allowed the sequence and quality strings to be wrapped (split over multiple lines), but this is generally discouraged as it can make parsing complicated due to the unfortunate choice of "@" and "+" as markers (these characters can also occur in the quality string).

2 用fastqc进行质量控制

FastQCaims to provide a simple way to do some quality control checks on raw sequence data coming from high throughput sequencing pipelines. It provides a modular set of analyses which you can use to give a quick impression of whether your data has any problems of which you should be aware before doing any further analysis. The main functions of FastQC are

  • Import of data from BAM, SAM or FastQ files (any variant)
  • Providing a quick overview to tell you in which areas there may be problems
  • Summary graphs and tables to quickly assess your data
  • Export of results to an HTML based permanent report
  • Offline operation to allow automated generation of reports without running the interactive application

用法: fastqc [-o output dir] [--(no)extract] [-f fastq|bam|sam] [-c contaminant file] seqfile1 .. seqfileN 参数: -o 输出目录,需自己创建目录 --(no)extract 是否解压输出文件,默认是自动解压缩zip文件。加上--noextract不解压文件。 -f 指定输入文件的类型,支持fastq|bam|sam三种格式的文件,默认自动识别。 -t 同时处理的文件数目。 -c 是contaminant 文件,会从中搜索overpresent 序列。

#将所有的数据进行质控,得到zip的压缩文件和html文件
fastqc -o .  *.fastq.gz

注意:-o后面有空格,表示输出到当前文件夹,之后的.后也有空格

3 质控结果解读

  • fastqc结果详细解读(包括代表意义,出错代表的意义等,极其详细)稍后会写一篇专门解读的文章

https://www.bioinformatics.babraham.ac.uk/projects/fastqc/Help/3%20Analysis%20Modules/

在本作业中,每个 fastq 文件都能生成一个 html 报告文件,很详细。结果可知,测序质量非常好。

QQ图片20180730145517.png

4 质控结果批量查看工具:multiQC

如果不嫌麻烦,可以一个个查看质控结果,毕竟前期数据下载处理等就花那么多时间,在进行质控的同时查看结果完全可以满足。但如果文件很多,可以进行合并查看,具体见 青山屋主:https://zhuanlan.zhihu.com/p/27646873 Hoptop:https://www.jianshu.com/p/303de2c95239 lxmic:https://www.jianshu.com/p/14fd4de54402

备注:稍后我会更新这部分内容

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java编程技术

深入浅出一致性Hash原理

在解决分布式系统中负载均衡的问题时候可以使用Hash算法让固定的一部分请求落到同一台服务器上,这样每台服务器固定处理一部分请求(并维护这些请求的信息),起到负载...

11710
来自专栏大内老A

提供第三种代码生成方式——通过自定义BuildProvider为ASP.NET提供代码生成

之前写了一些关于代码生成的文章,提供了两种不同方式的代码生成解决方案,即CodeDOM+Custom Tool和T4。对于ASP.NET应用,你还有第三种选择—...

242100
来自专栏步履前行

Spring Retry

  在我们的业务场景中,经常要调用其他的API来获取信息,比如我们的业务场景需要依赖个人信息来处理,这个时候调用个人信息服务的API,但是由于可能同一时段多方在...

52530
来自专栏Java架构师历程

IntelliJ IDEA 类代码模板注解自定义

本篇内容为大家提供的是IntelliJ IDEA 使用教程中的文件代码模板的使用,IntelliJ IDEA是java语言开发的集成环境,IntelliJ在业界...

2.8K30
来自专栏散尽浮华

linux运维中的命令梳理(四)

----------管理命令---------- ps命令:查看进程 要对系统中进程进行监测控制,查看状态,内存,CPU的使用情况,使用命令:/bin/ps (...

1.1K80
来自专栏Seebug漏洞平台

利用 phar 拓展 php 反序列化漏洞攻击面

通常我们在利用反序列化漏洞的时候,只能将序列化后的字符串传入unserialize(),随着代码安全性越来越高,利用难度也越来越大。但在不久前的Black Ha...

20950
来自专栏安富莱嵌入式技术分享

【RL-TCPnet网络教程】第39章 RL-TCPnet之TFTP服务器

本章节为大家讲解RL-TCPnet的TFTP服务器应用,学习本章节前,务必要优先学习第38章的TFTP基础知识。有了这些基础知识之后,再搞本章节会有事半功倍的效...

20130
来自专栏GopherCoder

『Ansible + Reclass 更好的运维』

49350
来自专栏时序数据库专栏

Elasticsearch 底层系列之分片恢复解析

    我们是基础架构部,腾讯云 CES/CTSDB 产品后台服务的支持团队,我们拥有专业的ES开发运维能力,为大家提供稳定、高性能的服务,欢迎有需求的童鞋接入...

24350
来自专栏TechBox

iOS经典错误Undefined symbols for architecture XXX:

41030

扫码关注云+社区

领取腾讯云代金券