RNA-seq 数据文件处理
http://www.fungenomics.com/article/30 【专题】基因组学技术专题(二)—— 为什么说FPKM/RPKM是错的
下载数据
wget是linux下一个从网络上自动下载文件的常用自由工具。它支持HTTP,HTTPS和FTP协议,可以使用HTTP代理。一般的使用方法是: wget + 空格 + 参数 + 要下载文件的url路径,例如:
1wget http://www.linuxsense.org/xxxx/xxx.tar.gz
Wget常用参数
-b:后台下载,Wget默认的是把文件下载到当前目录。
-O:将文件下载到指定的目录中。
-P:保存文件之前先创建指定名称的目录。
-t:尝试连接次数,当Wget无法与服务器建立连接时,尝试连接多少次。
-c:断点续传,如果下载中断,那么连接恢复时会从上次断点开始下载。
-r:使用递归下载
格式转换
// use sra-tools to transform > fastq-dump *.sra
为了后面分析方便,把相应的序列文件名改成相应的组
mv SRR1871481.fastq WT_Rep1.fastq
质量控制
Pre-Alignment QC
使用fastqc 软件来对原始序列fastq 文件进行质量检测 export PATH=/home/maque/FastQC/:$PATH fastqc *.fastq 这样每个 fastq 文件都能生成一个 html 报告文件,很详细
序列比对
使用 tophat 和 bowtie 进行比对
待添加
tophat2 -p 8 --bowtie1 -G genes.gtf -o WT_Rep1_output ../genome WT_Rep1.fastq
其他5个 fastq 文件与上面一致
-p 8 使用8线程
--bowtie1 使用bowtie1 , 默认是bowtie2
-G 后面跟注释文件 gtf
-o 后跟输出文件夹
最后面跟 原始序列 fastq 文件
经完成比对,生成了一个 accepted_hits.bam 文件, 这个就是 samtools 生成的,后面主要也是利用这个文件继续分析。 建议提前利用 IGV 软件查看一下 该 bam 文件,可以知道mapping 的情况。
查看bam文件
如果想查看,需要先对 该bam文件进行 index ,比如: samtools index WT_Rep1_output/accepted_hits.bam Use Cufflinks to generate expression estimates from the SAM/BAM files
Use Cufflinks to generate expression estimates from the SAM/BAM files
ref
export PATH=/home/maque/cufflinks-2.2.1.Linux_x86_64/:$PATH
cufflinks -p 8 -o WT_Rep1_cuffout WT_Rep1_output/accepted_hits.bam
其他5个与之类似
-p 8 使用8线程
-o WT_Rep1_cuffout 输出目录
最后面跟相应的 bam 文件 该过程完成后,会生成相应的文件夹,里面有相应的文件,后面会使用 transcripts.gtf 文件
Differential Expression
ref
ls -1 *cuffout/transcripts.gtf > assembly_GTF_list.txt
cuffmerge -p 8 -o merged -g Arabidopsis_thaliana_Ensembl_TAIR10/Arabidopsis_thaliana/Ensembl/TAIR10/Annotation/Genes/genes.gtf -s Arabidopsis_thaliana_Ensembl_TAIR10/Arabidopsis_thaliana/Ensembl/TAIR10/Sequence/WholeGenomeFasta/genome.fa assembly_GTF_list.txt
-p 8 使用8线程
-o merged 后跟目录
-g 后跟参考基因的gtf文件
-s 后跟基因组序列文件
最后跟上一步新建的 assembly_GTF_list.txt 接下来使用 cuffdiff
cuffdiff -o rna_de/diff_out -p 8 -L WT,athb merged/merged.gtf WT_Rep1_output/accepted_hits.bam,WT_Rep2_output/accepted_hits.bam,WT_Rep3_output/accepted_hits.bam athb_Rep1_output/accepted_hits.bam,athb_Rep2_output/accepted_hits.bam,athb_Rep3_output/accepted_hits.bam
-o 后跟输出文件目录
-p 8 使用8线程
-L WT,athb '-L' tells cuffdiff the labels to use for samples 后跟 上一步由 cuffmerge 生成的 merged.gtf 文件
最后跟6个bam 文件, 组内由逗号隔开,组间由空格隔开。
该过程会新建一个diff_out 文件夹,里面包含了很多信息 这些信息可以使用 R 包 cummeRbund 很方便的进行分析
使用cummeRbund
文档
推荐流程
可以按照推荐流程文档中的步骤去分析
下面主要说一些注意点:
安装
source("http://bioconductor.org/biocLite.R") biocLite("cummeRbund") 读入数据
首先先 cd 到上一个步骤生成的 diff_out 文件夹
library(cummeRbund) cuff
RNA-seq 数据文件处理的更多相关文章
- Oracle数据文件在open状态被删除的恢复记录
1.查看当前状态: SQL> select status from v$instance; STATUS------------OPEN SQL> show parameter name; ...
- 又遇BUG-ORA-01148:数据文件忽然变为recover状态
现象: RAC环境,数据文件状态变为recover,查看alert日志有如下报错: Wed Jun 26 02:31:03 2013 Thread 1 advanced to log sequence ...
- Spark Shuffle(三)Executor是如何fetch shuffle的数据文件(转载)
1. 前言 在前面的博客中讨论了Executor, Driver之间如何汇报Executor生成的Shuffle的数据文件,以及Executor获取到Shuffle的数据文件的分布,那么Executo ...
- Spark Shuffle(一)ShuffleWrite:Executor如何将Shuffle的结果进行归并写到数据文件中去(转载)
转载自:https://blog.csdn.net/raintungli/article/details/70807376 当Executor进行reduce运算的时候,生成运算结果的临时Shuffl ...
- 跨数据文件删除flashback database
Oracle flashback database的使用有一些限制,其中最主要的是flashback database不支持跨数据文件删除闪回和不支持跨数据文件shrink闪回.对于已经删除的数据文件 ...
- 05 使用bbed跳过归档恢复数据文件
5 使用BBED跳过归档 在归档模式下,缺失了一部分的归档日志文件,对数据文件进行恢复 1 开启归档 --shutdown immediate --startup mount --alter data ...
- <学习opencv>图像、视频和数据文件
/*=========================================================================*/ // openCV中的函数 /*====== ...
- [APUE]系统数据文件与信息
一.口令文件 UNIX口令文件包含下表中的各个字段,这些字段包含在 由于历史原因,口令文件是/bin/passwd,而且是一个文本文件,每一行都包括了上表中的七个字段,字段之间用":&quo ...
- U盘存放大于4G数据文件且无须格式化U盘的解决方法
现在优盘的容量越来越大了,价格越来越便宜,可是它也有个缺点,因为它默认的文件系统是"FAT32",这种文件系统最大只能保存4G的文件,超过4G的文件就不能保存在优盘上了,这样就不能 ...
- ORACLE 移动数据文件 控制文件 重做日志文件
ORACLE数据库有时候需要对存储进行调整,增加分区.IO调优等等,此时需要移动数据文件.重做日志文件.控制文件等等,下文结合例子总结一下这方面的知识点. 进行数据文件.重做日志文件.控制文件的迁移前 ...
随机推荐
- 控制dom 加载成功后事件
- 一些重要的k8s概念
1. Pause容器是什么 作为init pod存在,其他pod都会从pause 容器中fork出来 由pause容器管理 pause容器的工作 可知kubernetes的pod抽象基于Linux的n ...
- 8、TypeScript-解构赋值
1.数组的解构赋值 2.对象的解构赋值 注意:在浏览器环境中,windows本身有一个成员name,所以要重新,语法为 属性名:重命名 3.函数的解构赋值
- C#调用java包里的方法
用IKVM,步骤: 下载ikvmbin-7.2.4630.5.zip,解压,把bin目录所在路径加到环境变量path里 2.电脑开始->CMD,输入ikvmc –out:”输出dll文件的路径” ...
- SpringBoot是什么,可以做什么?
SpringBoot简析 1.SpringBoot是什么? 在Spring框架这个大家族中,产生了很多衍生框架,比如 Spring.SpringMvc框架等,Spring的核心内容在于控制反转( ...
- java无锁化编程一:目录
假设我们用netty做服务,当接受到网络传输的码流,我们通过某种手段将这种传输数据解析成了熟悉的pojo,那这些pojo该如何进一步处理? 比如游戏中的抢购.场景业务等,对处理那种高并发的业务场景,如 ...
- learning makefile 模式规则
- js定义函数方式有。。。
1,常见方式 function fun(data,...){ console.log(data); } 注:随处可调用 2. 函数直接定义函数 var fun = function (data,.. ...
- MATLAB绘图hist
刚登上号,已经学了一半了,就从现在开始写吧 以前学过的东西老忘,所以就注册个账号就当做记笔记吧 MATLAB在原来的数组中增加新行 A=[A;B]%B是要增加的行: hist使用方法 y=4*rand ...
- C++学习笔记:多态篇之虚函数
一.类型 在引入多态之前,我们先来看一下多态的两种类型: 二.多态性的概念 多态一词最初来源于希腊语,意思是具有多种形式或形态的情形,在C++中是指同样的消息被不同类型的对象接收时导致不同的行为,这里 ...