EMBOSS
序列提取程序
Example1:Extract the regions 30 to 45
extractseq sequence -regions "30-45"
Example2: extract the regions 1787-1912, 782-856;
extractseq sequence -reg "1787..1912,782..856"
EXAMPLE3: extract the regions 782-856, 1787-1912 all to separate output sequences:
extractseq tembl:x65921 -reg "782..856,951..1095,1557..1612,1787..1912" stdout
-separate
其他高级检索:
-snucleotideq :如果序列是核苷酸
-sprotein1 :如果序列是蛋白质
-slwer1 :make lower case
-sid1 <entryname>
-squery1 <query fields or ID list>
-osformat1 <输出序列格式>
-ossingle2 :seperate file for each entry
-ufo1 <UFO featrues>
双序列比对
- needle
- water
- stretcher: 改进的Needleman-Wunsch动态规划算法局相似性双序列比对程序,占用内存较少,运行时间较长。
- 例:比较af164138时,needle显示“Died: Sequences too big. Try 'stretcher'”
-datafile <矩阵>:选择blosum做蛋白比对,或者EDNAFULL做核酸序列比对(事实上可自动识别,不需再手动设置)
-sbegin1 <数字>:作为序列起始
-send1 <integer>: 作为序列最后
-sprotein: 序列是否是蛋白,不是则可继续读取
-snucleotide: 序列是否是核苷酸,同上
-sreverse:默认“-”前为mRNA,将其反转成DNA后再比对(“-sreverse1”,即使在最后也将翻转1)
-option:菜单模式
- matcher:局部相似性双序列比对,通过设定参数可同时输出多个相似性片段。
- a rigorous algorithm based on Bill Pearson's lalign application
- 用于相似度较低的矩阵(与water相似)
EXAMPLE:找到十个最佳alignment;
matcher <seq1> <seq2> -alt 10;
额外的参数:
-alternatives <integer>(-alt): 给出局部高分匹配序列,默认1只给出得分最高的序列;但是在cDNA多域蛋白与基因组DNA比较中,需要修改可能会得到其他有趣且重要的片段(若序列过短则会给出全局比对);(得分越高说明序列的相似度越高)
-gapextend(-gape): 【所有序列默认都是4】一般认为取几个长的空位比去很多短空位要合理,所以gape的值一般较小(除去某些特殊情况,比如单端测序使得序列有误时倾向于选择多个短空位,可以通过调低gapo实现(罚分针对的是第一条的空位插入情况));
- supermatcher:基于局部相似性的双序列快速比对,适用于超长序列之间或序列和数据库条目之间相似性比对,所得结果为近似解而非最优解
EXAMPLE:
supermatcher @eclac.list tembl:j016136 -word 50
可选参数:
-minscore <float>: 输出的匹配最小得分
-width <integer>: alignment的宽度
-wordlen <integer>: 读取步长
- seqmaterall:基于局部相似性的双序列快速比对,用于寻找一组序列中所有匹配字串(无文件)
- esim4:将mRNA序列定位于基因组序列:
esim4 <seq1> <seq2> :
seq1 = , 577 bp
seq2 = ((no header)), 846 bp
1-132 (4-135) 100% ->
133-337 (253-457) 100% ->
338-577 (607-846) 100%
esim4 <mRNA> <genome>
可选参数:
-word <integer>: blast的word size参数设置
-extend <integer>: 设置 在3~10之间
-format <integer>: 0:only exon endpoints;
5:CDS(只显示基因组上与mRNA相同的开始 和结束位置);
1:显示序列对应情况
-cutoff <integer>: integer 3~10
- est2genome:将EST序列定位于基因组序列
序列变换:
EXAMPLE1:给出seq1的反义互补序列的sev文件
revseq seq1 seq1.sev
EXAMPLE2: 只输出seq1的互补序列sev文件
revseq seq1 seq1.sev -norev
EXAMPLE3: 输出seq1自身的反义序列
reseq seq1 seq1.sev -nocomp
-其他命令:
-notag: 输出文去除标题
-
msbar:对序列进行模拟突变
- the number, size and type of mutation may be specified
- 碱基替换是随机单位点的碱基替换
交互式,主要命令都会显示并解释
高级参数:
-othersequence <seq>: 输出的突变序列不会和othersequece的序列相同
- shuffleseq:对输入序列进行变换,产生随机新序列(只改变碱基或氨基酸残基的顺序)
e.g.给出输入序列的两个随机拷贝:
shuffleseq -shuffle 2
交互式命令
核酸序列CpG岛分析
- cpgplot: 预测核酸序列中的CpG岛,用图形方式输出结果
交互式命令:
-window <integer>: CG百分数和观察到的CG频率以此参数设定的窗口大小来计算,并且窗口在序列上移动,并将数值累加。
-minlen <integer>: CpG岛的最小长度
-minoe <float>: 设置了一组10个窗口中,(C+G)观察值与CpG的期望值最小比率的平均值
-minpc <float>: 设置G和C在一组十个窗口中的最小平均百分数(期望值)
-graph <格式>:ps,hpgl,meta,cps(彩色),x11,tek,none,data,xterm,png,gif,pdf,svg
手动添加:
-(no)plot: 作为开关,可以绘出得分
-
cpgreport: 识别核酸序列中富含CpG双核苷酸区域
- 可人为改变CpG岛输出的阈值
- 由于该条命令算法是只要遇到CG就会有一个得分,并且将序列上的所有得分相加,因此会发生过度预测的情况,但是可以发现主外显子附近的较小的CpG岛
- 会出现的错误
[图片上传失败...(image-1c222c-1588692442306)]
e.g.报告seq1中CpG富集区域,输出阈值为28
cpgreport seq1 -score 28 -outflie <> -outfeat <>
(-outfeat 是特征值输出格式;或者可直接使用交互命令)
-
newcpgreport:识别核酸序列中富含CpG双核苷酸区域新方法
- 输出显示:位置、长度、C+G的总量,CG百分比和期待值百分率
相较于cpgplot的特殊之处:
-shift <integer>: 改变每次位移长度,当integer=1时,与cpgplot选择的cpg岛的片段是相同的(可见二者得分算法应该是相同的)
-
newcpgseek: 识别核酸序列中富含CpG双核苷酸区域新方法,灵敏度高。
- 与cpgreport的算法基本相同,但是会自动忽略把CG直接当成一个得分17的CpG岛的情况
-score <integer>: CpG被确认的得分阈值
读码框分析程序
- plotorf:根据起始密码子和终止密码子位置用图形方式显示DNA序列开放读码框
- showorf:按一定格式显示DNA序列及其翻译所得蛋白质序列
- getorf:从DNA序列中提取开放读码框序列,或其编码的氨基酸序列
-find <number>:0,终止密码子之间的翻译;1,起始密码子和终止密码子之间的翻译;2,终止子之间的核苷酸序列;3,启动子和终止子之间的核苷酸序列;4,启动子旁侧序列;5,最初终止子的旁侧序列;6,最后终止子的旁侧序列;
- sixpack:显示DNA序列6个开放读码框和翻译所得氨基酸序列