2023-03-11

#RNA-seq實(shí)戰(zhàn)代碼

#正常情況下公司給我們的數(shù)據(jù)就直接是fastq格式文件

#使用fastqc查看測(cè)序數(shù)據(jù)質(zhì)量,就會(huì)得到*.html文件

fastqc *.fastq.gz

#在html文件所在目錄下將*.html文件拷入一個(gè)單獨(dú)的文件夾:cp *.html 新建的單獨(dú)的文件夾所在的目錄

#將linux中的文件復(fù)制到桌面

cp -r 要復(fù)制的文件所在目錄 /mnt/c/Users/happy/Desktop/

#將所有的質(zhì)量報(bào)告合并:對(duì)html文件所在目錄跑一下multiqc:multiqc 新建的單獨(dú)的文件夾所在的目錄

multiqc 新建的單獨(dú)的文件夾所在的目錄 ? (要在rnaseq3.7環(huán)境中跑這個(gè)代碼)

#使用trim_galore 過(guò)濾fastq文件中質(zhì)量不好的reads和remove接頭序列

ls /home/happy/project/airway/raw/*_1.fastq.gz >1

ls /home/happy/project/airway/raw/*_2.fastq.gz >2

#生成只包含*—1.fastq.gz和*—1.fastq.gz文件的目錄

paste 1 2 >config

#過(guò)濾文件打算存儲(chǔ)的位置

dir='/home/happy/project/airway/clean/'

#循環(huán)如下:

cat config |while read id播玖;

do

arr=($id)

fq1=${arr[0]}

fq2=${arr[1]}

nohup trim_galore -q 25 --phred33 --stringency 3 --length 36 -e 0.1 --paired $fq1 $fq2 --gzip -0 $dir &

done

#3作儿、再次使用fastqc查看過(guò)濾后的文件

#比對(duì)迅箩,轉(zhuǎn)錄組比對(duì)主要是使用hisat2侨歉、subjunc屋摇、star;基因組主要是使用bwa和bowtie2

#比對(duì)首先要下載參考基因組構(gòu)建索引index幽邓,也可以直接在官網(wǎng)下載index炮温,人類(lèi)和小鼠的index有現(xiàn)成的

#方法一:直接在hisat2官網(wǎng)下載index,選擇合適的物種

#hisat2官網(wǎng):http://daehwankimlab.github.io/hisat2/download/

#構(gòu)建存儲(chǔ)索引的文件夾

mkdir index

cd index

wget 復(fù)制鏈接

#解壓index文件

tar -zxvf *.tar.gz

#刪除壓縮包

rm -rf *.tar.gz

#方法二:自己下載參考基因組和注釋文件構(gòu)建index

#下載基因組文件

wget 參考基因組鏈接

tar -zxvf ?*.tar.gz

#下載注釋文件

wget 注釋文件鏈接

gunzip *.gtf.gz

extract_exons.py hg19.ncbiRefSeq.gtf > genome.exon ? ? ? ?其中hg19.ncbiRefSeq.gtf是解壓后的注釋文件

extract_splice_sites.py hg19.ncbiRefSeq.gtf > genome.ss

#建立index

hisat2-build hg19.fa --ss genome.ss --exon genome.exon genome_tran

#4.比對(duì)

hisat2 --dta -t -x /data/RNAseq/mm10/genome -1 /data/RNAseq/cleandata/trim_galoredata/CK-4_1_val_1.fq.gz -2 /data/RNAseq/cleandata/trim_galoredata/CK-4_2_val_2.fq.gz -S cleandata/hisat2_mm10data/CK4.sam

#/data/RNAseq/mm10/ 是參考基因組文件所在目錄牵舵,genome這個(gè)不是文件夾柒啤,是index文件的前綴,mm10文件下并沒(méi)有這個(gè)文件畸颅,如果不加genome就會(huì)發(fā)生報(bào)錯(cuò)

#-1和-2分別表示雙端測(cè)序的1個(gè)文件担巩,后面跟的是文件路徑

#-S 后面跟的是輸出數(shù)據(jù)所在文件夾

#-x 后面接的是索引文件

#命令沒(méi)有問(wèn)題的話(huà),出現(xiàn)下面提示表示程序正在執(zhí)行没炒,就去干其他的涛癌,等執(zhí)行結(jié)束再往下:

Time loading forward index: 00:02:51

Time loading reference: 00:00:16

#寫(xiě)循環(huán)批量處理(for ?in 循環(huán)和while循環(huán)各寫(xiě)一個(gè))

#for in 循環(huán),創(chuàng)建腳本文件

vim hisat2_mm10_batch.sh

#輸入下面內(nèi)容:

for i in CK-7 CK-8 HGJ-10 HGJ-6 HGJ-9

do

hisat2 --dta -t -p 8 -x /data/RNAseq/mm10/genome

-1 /data/RNAseq/cleandata/trim_galoredata/"$i"_1_val_1.fq.gz

-2 /data/RNAseq/cleandata/trim_galoredata/"$i"_2_val_2.fq.gz

-S /data/RNAseq/cleandata/hisat2_mm10data/"$i".sam;done

#保存腳本窥浪,再運(yùn)行腳本

bash hisat2_mm10_batch.sh

#while 循環(huán)

#先創(chuàng)建存儲(chǔ)了SRR號(hào)的文件祖很。例如sra.txt

less sra.txt|while read id ;

do

hisat2 --dta -t -p 8 -x /data/RNAseq/mm10/genome

-1 /data/RNAseq/cleandata/trim_galoredata/"$i"_1_val_1.fq.gz

-2 /data/RNAseq/cleandata/trim_galoredata/"$i"_2_val_2.fq.gz

-S /data/RNAseq/cleandata/hisat2_mm10data/"$i".sam;done

#subjunc比對(duì)會(huì)直接輸出bam文件,就不用后續(xù)的sam轉(zhuǎn)bam文件

subjunc -T 5 -i /home/happy/project/airway/reference/mm10/genome -r ${id}_1_val_1.fq.gz -R ${id}_2_val_2.fa.gz -o ${id}.subjunc.bam

#5.samtools將sam文件轉(zhuǎn)bam文件漾脂,samtools可以進(jìn)行格式轉(zhuǎn)換假颇、排序、索引

#第一步:轉(zhuǎn)換

#SRR.txt為存儲(chǔ)了SRR號(hào)的文件

單樣本處理:samtools view -@8 -b SRR1039509.sam > SRR1039509.bam

多樣本處理:less /home/happy/project/airway/hisat2/SRR.txt|while read id ;do samtools view -@8 -b {$id}.sam > {$id}.bam done

#第二步:排序 samtools sort

#其中 -l是(-L的小寫(xiě))

單樣本處理:samtool sort -@ 8 -l -o SRR1039508.bam.sort SRR1039508.bam

多樣本批量處理:ls /home/happy/project/airway/SRR.txt |while read id ;do samtools sort -@ 8 -l {$id}.bam -o {$id}.bam.sort;done

#第三步:建立索引(index命令)在SRR1039508.bam.sort所在文件夾下操作

單樣本處理:samtools index ?SRR1039508.bam.sort SRR1039508.bam.index

查看sam文件直接用less骨稿,查看bam文件用samtools view SRR1039508.bam |less -S(分頁(yè)查看) 可以看出來(lái)是按pos排序還是按name排序笨鸡,這里是按pos(染色體位置)

#第四步:查看reads比對(duì)情況(flagstat命令),輸出.falgstat文件

samtools flagstat -@ 8 SRR1039508.bam.sort > SRR1039508.bam.flagstat

#第五步:igv可視化比對(duì)結(jié)果

先將bam文件轉(zhuǎn)為bw文件,要先構(gòu)建索引 samtools index SRR1039508.bam.sort

再使用bamCoverage轉(zhuǎn)換格式:bamCoverage -b SRR1039508.bam.sort -o SRR1039508.sort.bw

再將bw文件復(fù)制到桌面:cp *.bw /mnt/c/Users/happy/Desktop/ ? ?(bw文件要指定文件所在目錄)

igv里面選擇file 載入bw文件

#6.計(jì)數(shù)(htseq坦冠、featureCounts )通常用featureCounts計(jì)數(shù)

htseq計(jì)數(shù)代碼(很慢)

htseq-count -f bam -r pos /home/happy/project/airway/hisat2data/SRR1039508.bam.sort /home/happy/project/airway/reference/gencode.v10.annotation.gtf.gz

#-f 指定bam文件格式

#-r 指定排序方式形耗,這里是按位置position

#/home/happy/project/airway/hisat2data/SRR1039508.bam.sort ?進(jìn)行計(jì)數(shù)的bam文件

#/home/happy/project/airway/reference/gencode.v10.annotation.gtf.gz ?注釋文件所在目錄

featureCounts計(jì)數(shù)(很快):參考基因組和GTF/GFF/SAF注釋文件來(lái)自同一個(gè)網(wǎng)站,同一個(gè)版本

featureCounts 需要兩個(gè)輸入文件:比對(duì)產(chǎn)生的BAM/ SAM文件(一般會(huì)用bam文件辙浑,因?yàn)樗伎臻g屑さ印);區(qū)間注釋文件(GTF格式判呕, SAF格式)

代碼1:featureCounts -T 10 -a ../reference/gencode.v10.annotation.gtf.gz -o count.txt -p -B -C -f -t exon -g gene_id /home/happy/project/airway/hisat2data/*sort

代碼2:featureCounts -T 10 -a ../reference/gencode.v10.annotation.gtf.gz -o count1.txt -p -B -C -t exon -g gene_name /home/happy/project/airway/hisat2data/*sort

-g ?后面也可以接gene_name

#如果代碼1比對(duì)率不高倦踢,說(shuō)明不是全外顯子測(cè)序,則用代碼2

-T 指定線(xiàn)程數(shù) ? ?-f 如果-f被設(shè)置侠草,那將會(huì)統(tǒng)計(jì)feature層面的數(shù)據(jù)辱挥,如exon-level,否則會(huì)統(tǒng)計(jì)meta-feature層面的數(shù)據(jù)边涕,如gene-levels(feature數(shù)目指的是exon數(shù)目 ? meta-feature 指的是基因數(shù)目)

-a 參考GTF文件名 ? ? -F 參考文件的格式晤碘,一般為GTF/SAF 褂微,默認(rèn)為GTF ? ?-p 雙端測(cè)序 ? ?-B ?在-p選擇的條件下,只有兩端reads都被比對(duì)上的fragment才會(huì)被統(tǒng)計(jì)

-t 設(shè)置feature-type园爷,-t指定的必須是gtf中有的feature宠蚂,同時(shí)read只有落到這些feature上才會(huì)被統(tǒng)計(jì)到,默認(rèn)是“exon”

-g 默認(rèn)為gene_id ? ?-o 輸出文件的名字腮介,可輸出被統(tǒng)計(jì)數(shù)據(jù)的txt文本及summary文本

/home/happy/project/airway/hisat2data/*sort ?被統(tǒng)計(jì)的文件所在目錄及名稱(chēng)

#featureCounts查看及結(jié)果解析:less -SN ?count.txt ?(-SN可以使查看是排版更好)

Geneid:基因的ensemble基因號(hào); ? Chr:多個(gè)feature所在的染色體編號(hào); ?Start:多個(gè)feature起始位點(diǎn),與前面一一對(duì)應(yīng); ?End:多個(gè)feature終止位點(diǎn),與前面一一對(duì)應(yīng)

Strand:正負(fù)鏈 ? Length:基因長(zhǎng)度 ?sampleID:一列代表一個(gè)樣本肥矢,數(shù)值表示比對(duì)到該基因上的read數(shù)目

feature數(shù)目指的是exon數(shù)目 ? meta-feature 指的是基因數(shù)目

#7.表達(dá)矩陣探索

multiqc 要在3.7版本的python才不會(huì)報(bào)錯(cuò),所以要?jiǎng)?chuàng)建pyhton3.7環(huán)境下下載multiqc :conda create --name rnaseq3.7 python=3.7

conda activate rnaseq3.7

conda install -c bioconda -c conda-forge multiqc

multiqc count1.txt.summary ? ?就會(huì)得到一個(gè)html文件 ?復(fù)制到電腦桌面看

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末叠洗,一起剝皮案震驚了整個(gè)濱河市甘改,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌灭抑,老刑警劉巖十艾,帶你破解...
    沈念sama閱讀 206,214評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異腾节,居然都是意外死亡忘嫉,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,307評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)案腺,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)庆冕,“玉大人,你說(shuō)我怎么就攤上這事劈榨》玫荩” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 152,543評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵同辣,是天一觀的道長(zhǎng)拷姿。 經(jīng)常有香客問(wèn)我,道長(zhǎng)旱函,這世上最難降的妖魔是什么响巢? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,221評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮棒妨,結(jié)果婚禮上踪古,老公的妹妹穿的比我還像新娘。我一直安慰自己券腔,他們只是感情好伏穆,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,224評(píng)論 5 371
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著颅眶,像睡著了一般。 火紅的嫁衣襯著肌膚如雪田弥。 梳的紋絲不亂的頭發(fā)上涛酗,一...
    開(kāi)封第一講書(shū)人閱讀 49,007評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼商叹。 笑死燕刻,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的剖笙。 我是一名探鬼主播卵洗,決...
    沈念sama閱讀 38,313評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼弥咪!你這毒婦竟也來(lái)了过蹂?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 36,956評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤聚至,失蹤者是張志新(化名)和其女友劉穎酷勺,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體扳躬,經(jīng)...
    沈念sama閱讀 43,441評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡脆诉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,925評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了贷币。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片击胜。...
    茶點(diǎn)故事閱讀 38,018評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖役纹,靈堂內(nèi)的尸體忽然破棺而出偶摔,到底是詐尸還是另有隱情,我是刑警寧澤字管,帶...
    沈念sama閱讀 33,685評(píng)論 4 322
  • 正文 年R本政府宣布啰挪,位于F島的核電站,受9級(jí)特大地震影響嘲叔,放射性物質(zhì)發(fā)生泄漏亡呵。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,234評(píng)論 3 307
  • 文/蒙蒙 一硫戈、第九天 我趴在偏房一處隱蔽的房頂上張望锰什。 院中可真熱鬧,春花似錦丁逝、人聲如沸汁胆。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,240評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)嫩码。三九已至,卻和暖如春罪既,著一層夾襖步出監(jiān)牢的瞬間铸题,已是汗流浹背铡恕。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,464評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留丢间,地道東北人探熔。 一個(gè)月前我還...
    沈念sama閱讀 45,467評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像烘挫,于是被迫代替她去往敵國(guó)和親诀艰。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,762評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 生信學(xué)習(xí)筆記 linux部分功能 查看文件夾 工具 選項(xiàng) 可以設(shè)置鼠標(biāo)功能 可以設(shè)置右鍵粘貼 雙擊這個(gè)窗口可以再打...
    Vikenn閱讀 1,144評(píng)論 1 4
  • 一饮六、測(cè)序數(shù)據(jù)的準(zhǔn)備 新建工作目錄其垄,RNASeq-analysis mkdirRNASeq-analysiscdRN...
    胡小兵plus閱讀 27,950評(píng)論 1 36
  • control+左右鍵:光標(biāo)在單詞之間跳轉(zhuǎn)control+a:光標(biāo)跳到首control+e:光標(biāo)跳到尾more 查...
    王琪_738c閱讀 656評(píng)論 0 0
  • 一、文章數(shù)據(jù)下載 安裝miniconda sudo apt-get install wgetwget https:...
    黑白配_b74c閱讀 150評(píng)論 0 1
  • RNAseq實(shí)際操作(實(shí)戰(zhàn)) 首先聲明喜滨,雖然是實(shí)戰(zhàn)捉捅,但是其實(shí)是學(xué)習(xí)筆記而已,初學(xué)虽风,參考了大量大神的博客和帖子,還有...
    zd200572閱讀 4,390評(píng)論 0 29