前面我們講過(guò)?miRNA靶基因預(yù)測(cè)?,我們知道m(xù)iRNA靶基因預(yù)測(cè)一般是通過(guò)seed(種子序列)與靶基因序列互補(bǔ)配對(duì)來(lái)實(shí)現(xiàn)的。有很多本地版本的軟件都是基于這個(gè)原理來(lái)預(yù)測(cè)miRNA靶基因的渐裂,例如?targetscan?骚勘,miRanda把将,RNAhybrid等等夷恍。這些軟件都有本地版本童擎,可以下載到自己的電腦上運(yùn)行贪惹。一般輸入都是兩個(gè)文件苏章,一個(gè)是miRNA的成熟體序列,因?yàn)閙iRNA的種子序列一般位于miRNA成熟體5‘的2-7位(參考?miRNA靶基因預(yù)測(cè)?)奏瞬,另外一個(gè)輸入文件就是你要預(yù)測(cè)的靶基因序列了布近,這里的靶基因序列可以是mRNA 3’UTR序列,也可以是lncRNA或者circRNA序列丝格。
那么今天我們就來(lái)給大家分享一下如何獲取miRNA的成熟體序列撑瞧。首先我們?nèi)iRbase(http://www.mirbase.org/ftp.shtml)數(shù)據(jù)庫(kù)下載目前所有物種的miRNA成熟體序列文件mature.fa。關(guān)于miRbase的介紹可以參考?miRBase數(shù)據(jù)庫(kù)介紹及miRNA數(shù)據(jù)下載?显蝌。
mature.fa打開內(nèi)容如下
接下來(lái)我們給大家分享三種不同的方法來(lái)提取感興趣的物種的miRNA成熟體序列
1. perl語(yǔ)言
#!/usr/bin/perl -w
#打開包含所有物種miRNA成熟體序列的文件
open FILE,"mature.fa";
#新建一個(gè)輸出文件预伺,保存人的所有miRNA成熟體序列
open OUT,">hsa_mature_seq.fa";
#循環(huán)的讀取每一行內(nèi)容
while($line=<FILE>){
chomp($line);
#如果某一行匹配>hsa開始,證明這是人的miRNA
#如果對(duì)其他物種感興趣曼尊,需要知道這個(gè)物種的miRNA以什么開頭酬诀,如小鼠的是mmu
if($line=~/(^>hsa.*?) /){
#讀取下一行就是對(duì)應(yīng)的miRNA成熟體序列
$seq=<FILE>;
chomp($seq);
#寫到輸出文件中
print OUT "$1\n$seq\n";
}
}
#關(guān)掉輸入和輸出文件
close FILE;
close OUT;
hsa_mature_seq.fa文件打開內(nèi)容如下
2. R語(yǔ)言
#安裝Biostrings這個(gè)R包
BiocManager::install("Biostrings")
#加載Biostrings這個(gè)包
library("Biostrings")
#讀取包含所有物種miRNA成熟提序列的文件
mir=readRNAStringSet("mature.fa")
#替換序列名字,只保留第一個(gè)空格前面的內(nèi)容
#>cel-let-7-5p MIMAT0000001 Caenorhabditis elegans let-7-5p
#替換之后變成了>cel-let-7-5p
names(mir)=gsub(" .*$","",names(mir))
#提取以hsa開頭的miRNA骆撇,如果對(duì)其他物種感興趣
#需要知道這個(gè)物種的miRNA以什么開頭瞒御,如小鼠的是mmu,人的是hsa
index=grepl("^hsa",names(mir))
#提取相應(yīng)的序列
hsa=mir[index]
#寫出到human_mature_mir_seq.fa文件中
writeXStringSet(hsa, "human_mature_mir_seq.fa")
human_mature_mir_seq.fa文件打開內(nèi)容如下
3. 利用EmEditor正則表達(dá)式來(lái)提取miRNA的成熟體序列
視頻講解???
?EmEditor提取人miRNA成熟體序列
參考下面文章獲取所有代碼和數(shù)據(jù)
三種方法提取miRNA成熟體序列