raindyok的个人博客分享 http://blog.sciencenet.cn/u/raindyok

博文

群体结构分析之Structure 篇完整版(By Raindy)

已有 64412 次阅读 2016-4-4 16:46 |个人分类:软件教程|系统分类:科研笔记| Structure, Raindy, 群体结构

【絮语】

群体进化分析过程,经常要涉及群体结构分析,其中Structrue是分析群体结构组分的常用软件,本博文详细图解Structure分析的相关细节,首发于本人QQ空间(http://user.qzone.qq.com/58001704),如需转载,请保留作者信息,谢谢!

【相关软件
数据格式转化:GenAIEx、xmfaconvertor、xmfa2struct

群体结构分析:Structrue
最佳K值的确定:Structure Harvester (在线工具)
Clusters 重复抽样分析: CLUMPP、CLUMPAK
图形化显示结果:distruct
相关软件可以访问Structure官方网站下载:
http://pritchardlab.stanford.edu/structure.html
 
【操作流程】

 
1. 不同数据源格式转换
  不同的分析软件对输入格式都有一定的要求,Structure支持多种数据源,如:SSR数据、SNPs、序列数据等。除了序列数据外,大多数数据可以利用Excel的一个插件
GenAIEx进行转换,此类教程网上较多,本文不再赘述;对于纯序列类型转为Structure格式的教程尚未多见,故本文以纯序列为数据源进行示例图解说明。

(1)在Clustalx中打开比对好的序列文件,将其另存(Save sequences as)为Clustal格式,如下图所示,完成得到一个*.aln文件名;


(2)启动xmfaConvertor软件,将标签切换为“File”上,点击“In File”按钮,选择上一步转好的*.aln文件,并选择输出文件路径,设置完毕,点击OK即可,转换完成程序界面的左下角会提示“Successfully Done”说明序列格式转为XMFA格式(
eXtended Multi-Fasta Alignment )成功。


(3)进一步将XMFA格式转换为Structure支持的格式(扩展名不限),双击运行批处理文件xmfa2struct.bat,输入文件xmfa文件名回车(如:avr3a.xmfa),然后输入要输出的文件名,如示例的avr3a.str (扩展名可以任意,如:txt,,但推荐使用str);



当转换完成后,命令行界面会提示All done,此时*.xmfa所在的目录下会生成一个*.str文件,如下图avr3a.str;


(4)修改*.str的部分细节,此步可选,但建议处理。打开Excel程序,“打开”选择*.str前,先将文件类型改为所有文件(*.*),然后待定上一步的*.str,出现文本导入向导。向导第1步中,选择文件类型为“分隔符号”方式,如下图所示:


在向导第2步中,勾选中“空格”,如下所示:


至此,Excel已经完成打开*.str文件操作,如下图所示,默认转换的第一行会有不同的数字显示,相当于其他遗传标记中的Marker名称。该行可以保留,但在新建Structure方案设置参数时,对应处的选项也要相应设置。个人习惯将其删除,该行主要指示不同的Loci位点数。


当序列数据的个体来自不同群体时,可以在Excel的第二列插入一行,标记群体号,建议用纯数字表示,如:群体A标记为1、群体C标记为3、如此类推...


2. 群体结构分析
2.1 运算前检查数据
运行Structure主程序,在“File”->“Open Data File”菜单打开上一步得到的数据文件*.str。这个步骤主要核对数据一些信息,横向为位点数(注意:这里是位点数,不含个体那一列),纵向显示为个体数(行)等。如果能确保向导中的数据信息设置正确,则该步可以跳过。如下图所示,示例数据在Data界面显示位点数显示为18,即有18列(其中第1列在未定义为群体编号前也被默认示为一个位点,需要在向导第三步进行标记)。



2.2 “New Project”新建方案,根据向导提示设置参数


(1)出现方案向导,第一步是方案名称、保存目录及目的数据文件等信息:


(2)向导第二步是数据的具体信息,包括个体数、倍体数、位点数(最易设置错误)、缺失数值(有Gap时该处填-9,如没Gap时,可以填 0):


(3)向导第三步是输入数据的行标记,示例数据除第一列外的行内容都是具体数据,也没有Marker标记,故此处可以留空不勾选:


(4)向导第四步是输入数据的列标记,示例数据第1列为个体名称,第2列为群体标记,故勾选向导中的前两项。此时可以点击“Show data file format”弹出窗口显示110行19列(行数为个体数,列数19列需要扣除前两列)


(5)检查数据后,点“Finish”,此时所设置的参数以确认框的方法显示。


(6)如果设置无误,可以点击“Proceed”进行后续处理。此时方案数据也会显示数据信息。


2.3  Structure 运算参数设置

“New”新建一个参数设置名称,如示例为Avr3a,然后设置 Run Length,Burin Period=200000,Burin之后的链长=1200000(总链长为两者之和):


完成后,即可“Start a Job”,设置K值(预计的Clusters数据,比如2-7,一般不多于Pop总数)和重复次数5-10后,可以“Start”启动分析直至计算完成:


当出现“Job is Completed”提示,即说明程序完成结束。


2.4 打包结果文件
结果文件在方案保存目录下的“Results”,此时可以该文件夹以Zip格式进行压缩,备于下一步的Structure Harvester 分析。


3. 确定最佳K值
Structure 运算结果Results.zip 需要提交到在线工具
Structure Harvester 以判断群体的Clusters数(即最可能的K值)。
3.1 上传结果文件
在浏览器中输入
Structure Harvester服务器的网址(http://taylor0.biology.ucla.edu/struct_harvest/),选择结果文件,点击网页的“Harvest!”按钮即可自动开始分析:


3.2 结果查看及最佳K值判断
分析完成后,网页上给出两种方式推断最佳K值的图示,同时下方一个表格输出,包括K值、Runs重复数等,其中最佳K值那一行会以黄色突出显示,如下图所示,表明示例数据群体的最佳K值为3。



3.3 下载结果数据
 Structure Harvester分析得到的图表以压缩包形式提供下载,可以点击“download”即可下载。


对于推断的最佳K值,需要下载两个CLUMPP文件,indfile、popfile为多次runs得到个体和群体的Q-matirx数据,该数据用于后续的重复抽样分析。


4. 重复抽样分析Clusters
将上一步获得的Kx.indfile和Kx.popfile文件复制到CLUMPP目录下后,用记事本类的工具(如:Notepad++)打开该目录paramfile文件,需要修改以下几个关键之处:
(1)DATATYPE: 读取文件类型,0表示读取*.indfile,1表示读取*.popfile。示例数据演示为K3.popfile文件,此时DATATYPE值为1;
(2) POPFILE/INDFIEL:群体文件和个体文件的名称,本例为K3.popfile;
(3)OUTFILE:输出群体或个体文件的名称,本例为K3_p.outfile;
(4)MISCFILE:输出杂项文件,即输出的一些概要信息,可以不设置;
(5)K:即Cluster数,本例最佳K为3;
(6)C:个体总数或群体总数(注意与DATATYPE对应相关,当DATATYPE为主时,C表示群体总数;反之为个体总数)

(7)R:即Runs数,Structure运算某个K时的重复运行次数,本例为10;

Raindy 注:默认的搜索方法是Full search,如果数据量过大,建议使用贪婪法(将M值改2,当K大于15时,M=3)



CLUMPP参数设置完毕保存后,即可双击运行CLUMPP,出现如下图界面:


当出现“Press Return to exit”时,表示重复抽样运算结束,目录下生成相应的输出文件,如本例的
K3_p.outfile


同样方式,重新修改参数文件paramfile文件,修改对应的参数,注意下图红色标记之处的差别:


得到CLUMPP重复抽样得到的群体和个体的Q-matrix文件:K3_i.outfile和K3_p.outfile 用于后续distrut绘图。


5. 图形化显示结果
将上一步得到的K3_i.outfile和K3_p.outfile 复制到distruct 目录下,用于生成最终图形
(1)casia.indivq  个体的Q-matrix文件,可直接用上一步的K3_i.outfile;
(2casia.popq  群体的Q-matrix 文件,可以用上一步的K3_poutfile;
(3casia.names  Structure结果图示下方的名称
(4casia.languages  Structure结果图示上方的名称
(5casia.perm  Structure结果图示中不同Cluster对应的颜色


(6drawparams  distruct绘图的参数设置,定义前5个文件后,还需要修改K(最佳K值)、NUMPOPS(群体数)、NUMINDS(个体数)和输出文件名称(OUTFILE),如下图所示,输出文件为*.ps 文件,即Postscript文件:


上述6个文件修改完成,可以双击批处理文件distructWindows1.1.bat 即可自动绘图,直至出现程序路径时,输出文件K3.ps已经生成在目录内,可以用Adobe Illustrator(AI)转换为PDF文件。



延伸阅读:
Porras-Hurtado L, Ruiz Y, Santos C, Phillips C, Carracedo A, Lareu MV (2013) An overview of STRUCTURE: applications, parameter settings, and supporting software. Frontiers in genetics 4:98


SCI 美图:








常见问题:
1. CLUMPP重复抽样分析这一步是否可以忽略?
很多人都直接从结果随机选择一个xxx_runx_f文件进行绘制图。殊不知,这样生成的结果太为主观,因为同个K值的不同runs,所得到的Q-Matrix值不尽然相同,因此需要进行重复分析。

2. K 值的范围怎么选择?

K值一般从2开始



https://blog.sciencenet.cn/blog-460481-967774.html

上一篇:正选择分析之 Branch site model 篇(By Raindy)
下一篇:EasyCodeML 使用指南
收藏 IP: 222.76.54.*| 热度|

3 张余杰 刘乐乐 席辉辉

该博文允许注册用户评论 请点击登录 评论 (17 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-26 21:10

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部