【1】RNA-seq 测序数据之Hisat2比对-featurecount计算-EdgeR分析

article/2025/11/5 8:40:03

一、 拿到​​​​​​​测序数据之后,首先选择参考基因组及比对工具进行比对

1、Hisat比对:(6个G的测序数据耗时20分钟,比对率78.4%)##物种差异度大导致比对率低
##build index
hisat2-build -p 4 Pyrus_bretschneideri_chromosome_V121121.fa genome-V1##mapping 
hisat2 -x /home/xiaolong/xiaolong-data/Domestication-RNA/reference-genome/genome-V1 -p 20 --min-intronlen [int] --max-intronlen [int] -I 0 -X [int] -1 tt3_1_2.clean.fq.gz  -2 tt3_1_1.clean.fq.gz -S tt1.sam >hisat2_running1_out 
2. tophat2比对:( 6个G的测序数据 耗时几个小时,比对率只有65.4%) ##物种差异度大导致比对率低
nohup tophat -p 20 -G /home/xiaolong/xiaolong-data/Domestication-RNA/reference-genome/Pyrus_bretschneideri_Chr_gene.gff --library-type fr-unstranded  -o tophat_CG1_out /home/xiaolong/xiaolong-data/Domestication-RNA/reference-genome/Pyrus_bretschneideri_chromosome_V121121 CG105_1_1.clean.fq.gz CG105_1_2.clean.fq.gz &
二、featurecount计算read count
1. 从比对的sam文件中获取count文件
featureCounts -T 4 -p -t exon -g gene_id -a /home/xiaolong/xiaolong-data/Domestication-RNA/reference-genome/Pyrus_bretschneideri_Chr_gene.gtf -o CG1.txt CG1.sam

Note: 注释文件的gff 与 gtf格式互相转换--使用gffread

通过conda安装gffread

conda install -c bioconda gffread 

gff to gtf

gffread anno.gff -T -o anno.gtf

2. 提取每个基因上的count数,只需提取出第1列和第7列的信息

cut -f 1,6,7 CG1.txt |grep -v '^#' >CG1.count

三、计算rpkm值(01.cal-RPKM.py)

#!/public/home/xiaolong/anaconda3/bin/python
# -*- coding: utf-8 -*-
"""
@File    :   01.cal_RPKM.py
@Time    :   2021/12/03 16:26:35
@Author  :   Xiaolong
@Version :   1.0
@Contact :   bioinformaticc@163.com
@License :   (C)Copyright 2020-2021
@Desc    :   None
@Usage   :   None
"""from __future__ import divisionimport os,sys## sys.argv[1]  input count fileinf=open(sys.argv[1],"r")ouf=open(sys.argv[1]+".rpkm.xls","w")ouf.write("%s\t%s\t%s\t%s\n" % ("Geneid", "Length", "Count","RPKM"))for line in inf:breaktotal=0for line in inf:a=line.strip().split()num=int(a[2])total+=numsum=totalprint (sum)inf1=open(sys.argv[1],"r")for line1 in inf1:breakfor line1 in inf1:b=line1.strip().split()c=(int(b[2])*1000000000)/(sum*int(b[1])) ouf.write("%s\t%s\t%s\t%s\n" % (b[0],b[1],b[2],c))

四、使用EdgeR做差异分析

## EdgeR 需要使用BiocManager进行安装

To install core packages, type the following in an R command window:

if (!require("BiocManager", quietly = TRUE)) install.packages("BiocManager") BiocManager::install()

Install specific packages, e.g., “edgeR”, with

BiocManager::install(c("edgeR"))

1. 进入R,并加载 edgeR 包载,读取read count数 

library(edgeR)
data <- read.delim("CG-TTGZ.count", row.names=1, stringsAsFactors=FALSE)
head(data)
dim(data)

Noter: 数据格式(CG-TTGZ.count)

GeneID  CK1     CK2     CK3     T1      T2      T3
contig11g00001  3       5       5       3       10      0
contig11g00002  0       0       0       0       0       0
contig11g00003  3       0       1       2       5       2
contig11g00004  2       0       0       3       1       0
contig11g00005  54      59      43      36      35      25
contig11g00006  2       5       5       9       21      14
contig11g00008  0       0       0       0       0       0
contig11g00007  36      39      30      63      25      35
......

CK对照,1 2 3 三个重复;T处理,1 2 3  三个重复。

2. 构建分组变量

targets <- data.frame(Lane = c(1:6), Treatment = c(rep("TTGZ",3),rep("CG",3)),Label = c(paste("TTGZ", 1:3, sep=""), paste("CG", 1:3, sep="")))targets

3. 创建基因表达列表,进行标准化因子计算

y <- DGEList(counts=data[,1:6], group=targets$Treatment, genes=data.frame(Length=data[,6]))colnames(y) <- targets$Labeldim(y)

4. 对表达量偏低的基因进行过滤

keep <- rowSums(cpm(y)>1) >= 3y <- y[keep,]dim(y)

Note: 基因在至少3个样本中得count per million(cpm)要大于1

5. 重新计算库大小

y$samples$lib.size <- colSums(y$counts)

6. 进行标准化因子计算 默认使用TMM方法

y <- calcNormFactors(y)y

Note: 这里通过图形的方式来展示实验组与对照组样本是否能明显的分开以及同一组内样本是否能聚的比较近 即重复样本是否具有一致性

pdf("MDS.pdf")plotMDS(y)dev.off()

 

7. 估计离散度

y <- estimateCommonDisp(y, verbose=TRUE)y <- estimateTagwiseDisp(y)pdf("BCV.pdf")plotBCV(y)dev.off()

 

8. 通过检验来鉴别差异表达基因

et <- exactTest(y)top <- topTags(et)top

9. 定义差异表达基因与基本统计

summary(de <- decideTestsDGE(et)) # 默认选取FDR = 0.05为阈值

Note: 图形展示检验结果

detags <- rownames(y)[as.logical(de)]pdf("Smear.pdf")plotSmear(et, de.tags=detags)abline(h=c(-1, 1), col="blue")dev.off()

 

10. 差异基因结果输出

out <- topTags(et, n=Inf)write.table(out, file="DEG.txt", row.names = T, col.names = T, quote=F,sep="\t")

Reference: Comparative Transcriptomic Analysis Provides Insight into the Domestication and Improvement of Pear (P. pyrifolia) Fruit | Plant Physiology | Oxford Academic


http://chatgpt.dhexx.cn/article/qlgjliNo.shtml

相关文章

RNA-seq——上游分析练习(数据下载+hisat2+samtools+htseq-count)

步骤 0. 练习前准备1. 找到文章对应的数据集2. 下载数据集3. 与参考基因组进行比对4. reads计数5. 踩过的一点小坑 写在前面——之前使用的数据是单端测序&#xff0c;但是现在的数据基本都是双端测序。所以又找了个双端测序的例子来练习。之前在单端测序数据中&#xff0c;因为…

测序比对软件的总结----hisat2

hisat2的官网的manual&#xff1a; https://github.com/DaehwanKimLab/hisat2/blob/master/MANUAL 在这里记载了详细用法和介绍&#xff0c;此处仅为学习笔记&#xff0c;和实例记录。 HISAT2 is a fast and sensitive alignment program for mapping next-generation sequenc…

【bioinfo】hisat2/bowtie2比对结果summary文件解读

hisat2/bowtie2比对后&#xff0c;比对结果基本信息统计的summary文件解读。 参考&#xff1a; https://www.cnblogs.com/leezx/p/8540862.htmlseqanswers 论坛上的一个问答 使用seqanswers上的一个结果文件示例&#xff1a; 以及对应的回答&#xff1a; 整理该汇总文件中…

Hisat2 Bowtie2比对结果解读

Bowtie的中文意思是&#xff1a;领结&#xff0c;蝴蝶结 Bowtie2用户手册&#xff1a; http://bowtie-bio.sourceforge.net/bowtie2/manual.shtml 在看比对结果前需要了解三个概念&#xff1a; 1.Aligned concordantly 合理比对 主要和比对参数&#xff1a;–fr/–rf/–ff 有…

hisat2构建转录组索引的问题

hisat2构建转录组索引的问题 目前最新版为为hisat2. 安装过程如下 wget ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2/downloads/hisat2-2.1.0-Linux_x86_64.zip unzip hisat2-2.1.0-Linux_x86_64.zip 下载解压缩即可。 在进行比对前&#xff0c;首先需要对参考基因组建立索引…

hisat2比对结果图文解析

hisat2比对结果图文解析 看到hisat2输出的这个比对结果统计信息&#xff0c;是不是有点懵&#xff1f; 下面用图的方式进行简单剖析&#xff1a; 以上参考自https://blog.csdn.net/weixin_34191845/article/details/86453897 参考文献 Hisat2 bowtie2比对结果解读&#xff08…

RNA-seq——三、使用Hisat2进行序列比对

步骤 1. 下载对应的index2. 序列比对3. samtools&#xff1a;将sam文件转为bam文件4. 将bam文件载入IGV 为什么要比对&#xff1a;https://www.jianshu.com/p/681e02e7f9af Jimmy老师主要演示了四种比对工具&#xff0c;分别为hisat2、subjunc、bowtie2、bwa。除了subjunc能够直…

hisat2的index差别

下载的时候发下hisat2 主页中有多个index文件&#xff0c;一时间不解&#xff0c;搜索后发现如下评价。 目录 1.下载三个index&#xff1a;2.重命名为&#xff1a;3.hisat2比对命令&#xff1a;4.比对率&#xff1a;结论 1.下载三个index&#xff1a; 2.重命名为&#xff1a; …

Hisat2下载

功能&#xff1a; 将测序结果比对到参考基因组上 网站&#xff1a; http://ccb.jhu.edu/software/hisat2/index.shtml 安装&#xff1a;mkdir ~/biosoft && cd ~/biosoft wget ftp://ftp.ccb.jhu.edu/pub/infphilo/hisat2/downloads/hisat2-2.1.0-Linux_x86_64.zip …

安装Hisat2

一、&#xff08;MobaXterm_Personal&#xff09;安装aspera 首先进行预编译解压安装&#xff1a; mkdir Biosofts unzip hisat2-2.2.1-Linux_x86_64.zip -d ~/Biosofts/ cd ~/Biosofts ll ###zip文件&#xff0c;unzip解压&#xff0c;-d制指定目录 安装完成&#xff1a; 设置…

RNA-seq流程学习笔记(7)-使用Hisat2进行序列比对

参考文章&#xff1a; RNAseq(4)–Hisat2进行序列比对及Samtools格式转化 RNA-seq(5):序列比对&#xff1a;Hisat2 hisat2比对软件将reads比对到参考基因组 hisat2比对 RNA-seq数据分析使用方法&#xff08;陈建国 译&#xff09; 转录组分析2——比对基因组 RNA-seq练习 第二部…

RNA-seq分析htseq-count的使用

HTSeq作为一款可以处理高通量数据的python包,由Simon Anders, Paul Theodor Pyl, Wolfgang Huber等人携手推出HTSeq — A Python framework to work with high-throughput sequencing data。自发布以来就备受广大分析人员青睐,其提供了许多功能给那些熟悉python的大佬们去自信…

转录组学习之序列比对(Hisat2)[学习笔记通俗易懂版]

转录组学习之序列比对&#xff08;hisat2&#xff09;[学习笔记通俗易懂版] data :2023.7.25 recorder :CYH-BI 特别注意&#xff1a;本文为我自己学习的学习记录&#xff0c;没有任何权威&#xff0c;只能仅供初学者提供思路与参考。 本文知乎地址&#xff1a;https://zhua…

Hisat2安装及比对

Hisat2和STAR是目前转录组分析过程中用来做比对的两款主要工具&#xff0c;记得有一篇好像是2017年的文章专门比较了几款转录组比对工具对结果的影响&#xff0c;结论中认为两款软件在实际使用过程中对结果影响及耗时区别不大&#xff0c;我认为选一款就可以&#xff0c;之前总…

Hisat2 比对到参考基因组

比对的流程&#xff1a;建立索引→比对到参考基因组→SAM转BAM文件→BAM建立索引 1.准备参考基因组、建立索引 ## 参考基因组准备:注意参考基因组版本信息 # 下载&#xff0c;Ensembl&#xff1a;http://asia.ensembl.org/index.html # http://ftp.ensembl.org/pub/release-…

数据项组成数据元素,数据元素组成数据

数据元素&#xff1a;是组成数据的、有一定意义的基本单位。 数据项&#xff1a;一个数据可以由若干个数据项组成。数据项是数据不可分割的最小单位。 数据元素&#xff1a;字段、域、属性 数据项&#xff1a;元素、结点、顶点、记录 数据项组成数据元素&#xff0c;数据元…

数据结构 基本概念(数据项--数据元素--数据对象-数据类型-抽象数据类型)

//数据结构基本概念 #include<iostream> using namespace std;/* 数据 – 程序的操作对象&#xff0c;用于描述客观事物 数据的特点&#xff1a; 可以输入到计算机 可以被计算机程序处理 数据是一个抽象的概念&#xff0c;将其进行分类后得到程序设计语言中的类型。如&am…

根据结构体数组中某一数据项对结构体数组排序

/* *copyright(c) 2018,HH *All rights reserved. *作 者&#xff1a;HH *完成日期&#xff1a;2018年8月17日 *版本号&#xff1a;v1.0 * *问题描述:输入结构体数组&#xff0c;并根据结构体中的某一数据项对整个结构体数组进行排序 *输入描述&#xff1a;&#xff1b; *程序输…

点击echarts柱状图动态改变数据项颜色样式

首先附上参考文章连接&#xff1a;https://blog.csdn.net/weixin_42870683/article/details/103528254添加链接描述 今天来实现点击echarts柱状图&#xff0c;动态改变柱状图数据项颜色样式的案例。只要认真做&#xff0c;很容易学会~ 首先引入ECharts.js文件 <!-- 引入 …

数据结构考研:数据、数据元素、数据项、数据对象、数据结构的区别/详细解释(计算机/软件工程/王道论坛)

一、问题背景 博主最近在准备2020年春招复习数据结构这门功课时&#xff0c;采用了王道论坛的《2020年数据结构考研复习指导》这本书&#xff0c;该书的第一章节便是数据结构的基本概念&#xff1a;数据、数据元素、数据项、数据对象、数据结构。但该书对这几个容易混淆的概念…