欢迎关注"生信修炼手册"!
微卫星microsatellite, 又叫做简单重复序列(simple sequence repeats, SSR)或者短串联重复序列(short tandem repeats, STR), 指的是以2到10bp的短序列为单位,重复出现多次所构成的DNA序列。
重复的最小单位称之为motif, 示例如下
代码语言:javascript复制agagagagagag
上述片段就是一段SSR序列,motif为ag, 重复出现了6次。
微卫星DNA种类多,分布广,在基因组中平均50bp就有一个重复序列;在不同种族,不同人群中重复单位和重复次数都大不相同,构成了SSR遗传多态性。
SSRIT是一款识别简单重复系列的软件,官网如下:
http://archive.gramene.org/db/markers/ssrtool
该软件的官网提供了在线服务,用法如下
第一步,选择motif的最小长度和最小重复次数
参数a用于选择motif的最小长度,可选范围为2到10bp; 参数b用于选择最小重复次数,建议最小重复次数为5以上。
第二步,输入fasta格式的序列
在文本框中,输入fasta格式的序列,然后点击右下角的FIND SSRs
提交即可。
输出结果如下
第一列为SSR区域的ID,由序列标识符和数字编号构成,第二列为Motif的碱基序列,第三列为重复次数,第四列和第五列对应SSR区域的起始和终止位置,第六列为输入序列的总长度。
也可以下载脚本本地运行,安装过程如下
代码语言:javascript复制wget ftp://ftp.gramene.org/pub/gramene/archives/software/scripts/ssr.pl
该软件采用perl语言开发,直接下载对应的perl脚本就可以了,这个perl脚本写的是比较简陋的,并没有提供帮助文档之类的信息。从源代码可以看出,用法如下
代码语言:javascript复制perl ssr.pl input.fasta > ssr.txt
只需要提供fasta格式的输入文件就可以了,一次可以提供多个fasta文件,示例文件如下
代码语言:javascript复制>seq1
agagattaggatcgatcgcgctctctctctctctctcgatcgagatcgat
ggccatcatcatcatcatcattgagatatagcgcgatatcgagagatctc
agaatagatatcgcgctatagagagatcgagagagagtaga
>seq2
agagataggaatatgagatagcgggggggggggggcgctatacgcgctcg
gagagagatctctctctctcttatagagatcgatcgactagctagatata
agactcactcactcactcactcactcagcgcgat
输出结果通过重定向保存在ssr.txt
文件中,该文件的内容如下
seq1 1 3 cat 6 54 71 141
seq2 1 4 actc 6 103 126 134
输出内容和在线服务基本一致,第2列和第三列不需要看。需要注意的是,同样的输入文件,在线服务识别到了4个SSR区域,而本地版只识别到了2个,这个是因为参数设定不同。
本地版的motif长度和重复序列次数只能通过修改源代码实现,对应代码如下
代码语言:javascript复制my @specs = ([2,9], #dinucl. with >= 9 repeats
[3,6], #trinucl. with >= 6 repeats
[4,5]); #tetranucl. with >= 5 repeats
默认情况下,对于2bp的motif, 要求最小重复次数为9次,ct
这个motif只出现了8次,所以过滤掉了,如果想要和官网保持一致,可以修改源代码,然后再次运行就可以了。