内容简介:参考FastQC 察看数据质量,Trimmomatic 来进行接头,低质量测序reads的过滤与修剪;用StringTie对每个样本进行转录本组装
1. 简介
测序技术的普及使得RNA-seq进入寻常百姓家,单纯的qRT数据通量不再满足实验数据的需求,而RNA-seq的分析无非就是有参和无参两种方式;
本文主要就有参转录组的分析做简单介绍;
此外,有参转录组数据分析流程千千万,本文仅是其中一种,详细运行参数请多 -help
;
2. 环境准备
- 质量检验
- reads 过滤与修剪
- 序列比对
- 排序及格式转换
- 序列组装
- 差异表达分析
3. 数据准备
- 目标物种基因组数据【基因组fa (genome.fa)和gff注释文件 (genome.gff3)】
- 测序 reads (实验室生成或NCBI下载)
4. 测序reads分析过程
4.1 SRA 转 fq (可选)
参考 Using the SRA Toolkit to convert .sra files into other formats ,根据个人喜好选用相应 工具 将NCBI的SRA数据库下载SRA数据转化为fq格式;
4.2 质控
FastQC 察看数据质量,Trimmomatic 来进行接头,低质量测序reads的过滤与修剪;
ls *gz |xargs -I [] echo 'nohup fastqc [] &'>fastqc.sh ./fastqc.sh multiqc .\
java -jar trimmomatic-0.30.jar PE \ -threads 20 -phred33 reads1.fastq reads2.fastq \ reads1.clean.fastq reads1.unpaired.fastq reads2.clean.fastq reads2.unpaired.fastq \ ILLUMINACLIP:/Trimmomatic-0.30/adapters/TruSeq3-PE.fa:2:30:10 \ LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:50
4.3 序列比对
hisat2-build genome.fa genome hisat2 -x genome -1 read1.fq.gz -2 read2.fq.gz -S Sample.sam -p 8
4.4 排序 及格式转换
samtools view -bS Sample.sam | samtools sort -@ 8 - Sample.sorted
4.5 序列组装
用StringTie对每个样本进行转录本组装
# Transcriptome assembly stringtie -p 8 -G genes.gtf -o Sample.gtf –l Sample.sorted.bam # 获取所有*.gtf 文件名的列表, 并且每个文件名占据一行 ls | \grep "Sample" | sort -V | uniq | awk 'BEGIN{OFS="/"} {print $1,$1".gtf"}' > Sample_gtf.txt # Merges transcripts into a non-redundant set of transcripts stringtie --merge -p 8 -G genes.gtf -o merged.gtf Sample_gtf.txt # Expression level estimation stringtie –e –B -p 8 -G merged.gtf -o Sample.gtf Sample.sorted.bam
4.6 count data 提取
准备上述gtf结果文件sample文件 (sample_lst.txt),格式如下:
Sample1 <PATH_TO_Sample1.gtf> Sample2 <PATH_TO_Sample2.gtf> Sample3 <PATH_TO_Sample3.gtf> Sample4 <PATH_TO_Sample4.gtf>
提取各样品count data
prepDE.py sample_lst.txt
5. 差异表达分析
差异分析可参考 搭PacBio全长转录组便车的无重复样本RNA-seq分析 ;
主要就是准备 表型文件和上述的基因或转录本count 文件 ;
表型数据格式如下 (phenodata.csv):
SAMPLE group Sample1 leaf Sample2 leaf Sample3 root Sample4 root
5.1 DESeq2
library("DESeq2") countData <- as.matrix(read.csv("gene_count_matrix.csv", row.names="gene_id")) colData <- read.csv(phenodata.csv, sep="\t", row.names=1) all(rownames(colData) %in% colnames(countData)) countData <- countData[, rownames(colData)] all(rownames(colData) == colnames(countData)) dds <- DESeqDataSetFromMatrix(countData = countData, colData = colData, design = ~ CHOOSE_FEATURE) dds <- DESeq(dds) res <- results(dds) (resOrdered <- res[order(res$padj), ])
5.2 edgeR
edgeR 和上述 DESeq2相似,具体请参考其BiocManager 说明;
5.3 Ballgown
上述StringTie结果可直接用Ballgown读取来进行差异分析;
library(ballgown) pheno_data <- read.csv("phenodata.csv") bg <- ballgown(dataDir = "ballgown", samplePattern = "sample", pData = pheno_data) samplesNames(bg) bgfilt <-subset(bg,'rowVars(texpr(bg))>1',genomesubset=TRUE)(过滤掉表达差异较小的基因) diff_genes <- stattest(bgfilt,feature='gene',covariate=【自变量】,adjustvars=【无关变量】,meas='FPKM') diff_genes <- arrange(diff_genes,pval) write.csv(diff_genes,'diff_genes.csv',row.names=FALSE) # MA plot library(ggplot2) library(cowplot) results_transcripts$mean <- rowMeans(texpr(bg_chrX_filt)) ggplot(results_transcripts, aes(log2(mean), log2(fc), colour = qval<0.05)) + scale_color_manual(values=c("#999999", "#FF0000")) + geom_point() + geom_hline(yintercept=0)
6. 扩增阅读
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 帮助病人快速找到致病原,「IDbyDNA」用AI提高宏基因组检测效率
- 区块链和人类基因组——对话GENEOS,EOS全球黑客马拉松的冠军
- 华大基因未来成长四大亮点 基因合成业务想象空间大
- 基因测序性能提升5倍,华为云FPGA基因加速方案彰显技术创新能力
- 【安全帮】华大基因澄清:“14万中国人基因大数据”研究全部在境内完成
- 基因领域:总融资9.86亿美元与去年持平,基因治疗浪潮即将来袭【VB100】
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
HTTP Essentials
Stephen A. Thomas、Stephen Thomas / Wiley / 2001-03-08 / USD 34.99
The first complete reference guide to the essential Web protocol As applications and services converge and Web technologies not only assume HTTP but require developers to manipulate it, it is be......一起来看看 《HTTP Essentials》 这本书的介绍吧!