本节讲解如何进行 motif 预测,seqlogo 和motif位置展示。
motif预测
motif 预测使用 meme 软件进行预测,有在线和linux两种版本。
在线版网址:http://meme-suite.org/tools/meme
上传鉴定到的蛋白序列,选择anr模式,个数为10,长度6-100,提交即可。
motif鉴定的结果
seqlogo图展示motif在每个位置的保守程度,字母越高,该位置的保守性越好。同一位置的不同氨基酸会根据其频率进行缩放。
下面重点讲一讲怎么在linux上预测motif
先使用conda安装meme
## 基于蛋白序列进行motif预测
meme pep.fasta \
-mod anr \#预测模式,oops 1个, zoops 0 个或一个 ,anr 任意个
-protein \数据类型
-nmotifs 10 \motif个数
-minw 6 -maxw 100 #长度范围
#生成的结果在meme_out中
结果文件
meme.html #网页版的meme结果
meme.xml #xml格式的结果文件
meme.txt #文本格式的结果文件
logo.eps #eps格式的seqlogo图
logo.png #png格式的seqlogo图
为了方便数据查看,可以从 mem.txt 文件中提取蛋白序列的位置及 motif序列信息。
perl ./meme.pl meme_out/meme.txt new
生成的结果文件
new.motif_prot.bed
new.motif_prot.txt
new.motif_seq.txt
motif图的绘制
meme 软件生成的网页版报告中绘制好了 motif 的 seqlogo 图,我们也可以自己使用ggseqlogo这个R包绘制 seqlogo 图。
#加载包
library(ggplot2)
library(ggseqlogo)
#加载数据
data(ggseqlogo_sample)
#seqs_dna
head(seqs_dna)[1]
## $MA0001.1
## [1] "CCATATATAG" "CCATATATAG" "CCATAAATAG" "CCATAAATAG" "CCATAAATAG"
## [6] "CCATAAATAG" "CCATAAATAG" "CCATATATGG" "CCATATATGG" "CCAAATATAG"
#pfms_dna
head(pfms_dna)[1]
## $MA0018.2
## [,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8]
## A 0 0 11 0 1 0 2 8
## C 1 1 0 9 0 3 7 0
## G 1 10 0 2 10 0 1 1
## T 9 0 0 0 0 8 1 2
#seqs_aa
head(seqs_aa)[1]
## $AKT1
## [1] "VVGARRSSWRVVSSI" "GPRSRSRSRDRRRKE" "LLCLRRSSLKAYGNG"
## [4] "TERPRPNTFIIRCLQ" "LSRERVFSEDRARFY" "PSTSRRFSPPSSSLQ"
ggseqlogo(seqs_dna$MA0001.1)
ggseqlogo(seqs_aa$CDK2, seq_type="aa")
ggseqlogo_sample数据集是内置的数据集包括三种:
seqs_dna:12种转录因子的结合位点序列
pfms_dna:四种转录因子的位置频率矩阵
seqs_aa:一组激动酶底物磷酸化位点序列
ggseqlogo支持氨基酸、DNA和RNA序列类型,默认情况下ggseqlogo会自动识别数据提供的序列类型,也可以通过seq_type选项直接指定序列类型。
上传自己的数据绘制seglogo图即可。