structure-2.3---中文使用手册

上传人:good****022 文档编号:116678103 上传时间:2022-07-06 格式:DOC 页数:45 大小:981.50KB
收藏 版权申诉 举报 下载
structure-2.3---中文使用手册_第1页
第1页 / 共45页
structure-2.3---中文使用手册_第2页
第2页 / 共45页
structure-2.3---中文使用手册_第3页
第3页 / 共45页
资源描述:

《structure-2.3---中文使用手册》由会员分享,可在线阅读,更多相关《structure-2.3---中文使用手册(45页珍藏版)》请在装配图网上搜索。

1、Structure 2.3中文使用手册Jonathan K. PritchardaXiaoquan WenaDaniel Falushb 1 2 3a芝加哥大学人类遗传学系b牛津大学统计学系软件来自http:/pritch.bsd.uchicago.edu/structure.html 2010年2月2日1我们在Structure项目中的其他的同事有Peter Donnelly、Matthew Stephens和Melissa Hubisz。2开发这个程序的第一版时作者(JP、MS 、PD)在牛津大学统计系。3关于Structure的讨论和问题请发给在线的论坛上:structure-。 在邮递

2、问题之前请查对这个文档并搜索以前的讨论。1 引言程序Structure使用由不连锁的标记组成的基因型数据实施基于模型的聚类方法来推断群体结构。这种方法由普里查德(Pritchard)、斯蒂芬斯(Stephens)和唐纳利(Donnelly)( 2000a)在一篇文章中引入,由Falush 、斯蒂芬斯(Stephens)和普里查德(Pritchard)(2003a ,2007)在续篇中进行了扩展。我们的方法的应用包括证明群体结构的存在,鉴定不同的遗传群体,把个体归到群体,以及鉴定移居者和掺和的个体。简言之,我们假定有K个群体(这里 K可能是未知的)的一个模型,每个群体在每个位点上由一组等位基因频

3、率来刻画。样本内的个体被(按照概率)分配到群体,或共同分配到两个或更多个群体,如果它们的基因型表明它们是混和的。假定在群体内,位点处于哈迪-温伯格平衡和连锁平衡。不精确地讲,个体被按达到这一点那样的方法指定到群体。我们的模型不假定一个特别的突变过程,并且它可以应用于大多数通常使用的遗传标记,包括微卫星(microsatellites)、SNP和RFLP 。模型假定在亚群体内标记不处于连锁不平衡(LD ),因此我们不能处理极其靠近的标记。从 2.0版开始,我们现在能够处理弱连锁的标记。虽然这里实现的计算方法是相当强有力的,但是为了保证明智的答案,在运行程序的过程中还是需要谨慎。例如,不可能从理论

4、上确定合适的运行长度(时间),这需要用户自己做一些实验。这份资料描述软件的使用和解释,并补充发表的文章,这些文章提供了对方法的更正式的描述和评价。1.1 概述软件包Structure由几个部分组成。程序的计算部分用C 语言编写。我们发布源码和用于各种平台(目前有苹果机,Windows ,Linux ,Sun)的可执行文件。C可执行文件读取用户提供的一个数据文件。还有一个Java前端为用户提供各种有帮助的工具,包括对输出的简单的处理。你也可以从命令行调用Structure而不是使用前端。这份资料包括关于怎样格式化数据文件、怎样选择合适的模型、以及怎样解释结果的信息。它也有关于使用两种界面(命令行

5、和前端)的细节以及各种用户定义的参数的汇总。1.2 在 2.3 版中有哪些更新?2.3版(2009年4月发布)引入了新的模型用于改进数据集结构的推论,其中(1)数据对于通常的结构模型来说信息不够,不足以提供准确的推论,但是(2)抽样的地点与群体归属关系(population membership)相关。在这种情形下,通过明确利用抽样地点信息,我们使结构得到改善,经常允许性能提高很多(Hubisz et al., 2009)。我们希望在下几个月释放更进一步的改进。表1:实例数据文件。这里MARKERNAMES = 1, LABEL = 1, POPDATA = 1, NUMINDS = 7, N

6、UMLOCI = 5, MISSING = -9, POPFLAG = 0, LOCDATA = 0, PHENOTYPE = 0, EXTRACOLS = 0。第2列显示个体的地理取样位置。我们也可以把数据存储为每个个体一行(ONEROWPERIND = 1),在这种情况下第一行为 “George 1 -9 -9 145 -9 66 64 0 0 92 94”。Loc_a Loc_b Loc_c Loc_d Loc_e 乔治 1 -9 145 66 0 92乔治 1 -9 -9 64 0 94保拉 1 106 142 68 1 92保拉 1 106 148 64 0 94马修 2 110 1

7、45 -9 0 92马修 2 110 148 66 1 -9 鲍勃 2 108 142 64 1 94鲍勃 2 -9 142 -9 0 94Anja 1 112 142 -9 1 -9 Anja 1 114 142 66 1 94彼得 1 -9 145 66 0 -9 彼得 1 110 145 -9 1 -9 卡斯坦 2 108 145 62 0 -9 卡斯坦 2 110 145 64 1 922 数据文件的格式基因型数据的格式显示在表2中(表1显示一个例子)。基本上,整个数据集被作为一个矩阵安排在单个文件里,其中个体的数据在行里,位点在列里。用户能对格式做出若干选择,大多数这些数据(除基因型

8、外!)是可选择的。对于一个二倍体生物,每个个体的数据可以是作为连续的2行被储存,其中每个位点在一列,或者在一行中,其中每个位点在连续的两列。除非你打算使用连锁模型(见下面),否则单个个体的等位基因的次序并不重要。预基因型(pre-genotype)数据列(见下面)对每个体记录两次。(更一般地,对于n倍体生物来说,每个个体的数据被储存在n个连续的行中,除非ONEROWPERIND 选项被使用。) 2.1 数据文件的组成部分:输入文件的要素如下所列。如果给出,它们一定按以下顺序,然而大多数是可选的并且可以被完全删除。用户必须指明哪些数据被给出,或者在前端里(front end),或者(当从命令行运

9、行Structure时)在一个单独的文件mainparams 里。同时,用户也要指定个体和位点的数目。2.2 行1. 标记名称(可选择;字符串) 文件的第一行可以包含数据集里的每个标记的标识符的一个列表。这一行包含整数或字母的L个字符串,其中L是位点的数目。2. 隐性等位基因(仅用于有显性的标记数据;整数)SNP或者微卫星数据一般将不包括这一行。但是如果选项RECESSIVEALLELES被设置为1,则程序要求有这一行来表明每个标记上哪个等位基因(如果有的话)是隐性的。关于更多的信息请参阅第4.1节。该选项用于象AFLP那样的数据,以及用于多倍体的情形,其中基因型可能是含糊的。3. 标记之间的

10、距离(可选择;实数)文件里的下一行是一个标记之间距离的集合,供有连锁的位点使用。这些应该是遗传距离(例如,厘摩),或者是这种距离的一些替代,基于(例如)物理距离。如果标记距离(粗略地)与重组率成正比,则距离的实际单位不是那么重要 。前端从数据估计一个合适的尺度,但是命令行版本的用户必须在文件extraparams里设置LOG10RMIN、 LOG10RMAX和LOG10RSTART。标记必须按照连锁群中的图谱次序排列。当连续的标记来自不同的连锁群(例如,不同的染色体)时,这应该用数值-1注明。第一个标记也被赋值为-1。所有其他的距离都是非负的。这一行包含L 个实数。4. 连锁相信息(可选择;仅

11、用于二倍体数据;在范围0, 1内的实数)。这只供连锁模型使用。这是L个概率的一行,出现在每个个体的基因型数据之后。如果连锁相是完全知道的,或者没有连锁相信息可用,则这些行是不必要的。当有来自家系数据的部分连锁相信息,或者当来自雄性的单倍体X染色体数据和二倍体常染色体数据被一起输入时,它们可能是有用的。对于连锁相信息有两种可选择的表示:(1)个体的两行数据被假设为分别与父本的和母本的相对应。连锁相行表明当前标记上的排序正确的概率(设置MARKOVPHASE = 0);(2)连锁相行表明与以前的等位基因有关的一个等位基因的连锁相是正确的概率(设置MARKOVPHASE = 1)。第一项应该填入0.

12、5 ,以便把这行填写到L项。例如下列数据输入表示来自一个男性的信息,有5个连锁相未知的常染色体微卫星位点,后面是3个X染色体位点,使用母本/父本相模型:102 156 165 101 143 105 104 101100 148 163 101 143 -9 -9 -90.5 0.5 0.5 0.5 0.5 1.0 1.0 1.0其中-9表示“缺失数据”,这里缺失是由第二 X染色体缺乏造成的, 0.5表明常染色体位点的连锁相是未知的,1.0表明X 染色体位点由母本遗传的概率为1.0,因此其连锁相是已知的。相同的信息可以用markovphase模型来描述。这样的话输入文件将读为:102 156

13、165 101 143 105 104 101 100 148 163 101 143 -9 -9 -9 0.5 0.5 0.5 0.5 0.5 0.5 1.0 1.0这里,2 1.0 s 表明那个第1 和第2,其次和第3 个X染色体位点彼此完全同相。注意站点以站点产量在这些2 模式下将不同。在第一例子中,Structure将输出母亲和父亲染色体的任务可能发生的事件。在第2 个情况下,它将输出在输入文件里列举的每等位基因的可能发生的事件。5. 个体/ 基因型数据(必需的)取样的每一个个体的数据象在下面描述的那样安排成一行或多行。2.3 个体/ 基因型数据个体数据的每一行包含下列要素。这些形成数

14、据文件里的列。1. Label(标签) (可选择;字符串) 一串整数或者字母,用来指明样本中的每个个体。2. PopData(可选择;整数)一个整数,指明一个用户定义的群体,从其中获得个体(例如这些整数可以指明个体取样的地理位置)。在默认的模型中,这个信息不被聚类算法使用,但是能用来帮助组织输出(例如,将来自相同的预定义群体的个体彼此紧挨着绘图)。3. PopFlag(可选择;0或者1)一个布尔标签,表明使用学习样本时是否使用PopData(见USEPOPINFO,在下面)。(注:布尔(Boolean)变量(标签)是取值为TRUE或FALSE的变量,在这里分别用整数1(使用PopData)和0

15、(不使用PopData)表示。) 4. LocData(可选择;整数)一个整数,为每个个体指明一个用户定义的取样地点(或者其他特性,例如一个分享的表现型)。当LOCPRIOR模型被打开时,这个信息用来帮助聚类。如果你仅仅希望使用LOCPRIOR模型的PopData,那么你可以省略LocData列,并设置 LOCISPOP = 1(这告诉程序使用 PopData来设置地点)。5. Phenotype(可选择;整数) 一个整数,为每个个体指明一个所关心的表现型的值(表中的 (i))。(表现型信息实际上没有用于Structure。这里用来允许与关联作图程序STRAT有一个平滑的接口。) 6. Ext

16、ra Columns(可选择;字符串) 用户把被程序忽略的附加数据包括在输入文件里可能是方便的。这些数据就在这里输入,可以是由整数或字符组成的串。7. Genotype Data(必需的;整数) 一个给定位点上的每个等位基因应该由一个独特的整数来编码(例如微卫星重复得分)。2.4 缺失的基因型数据缺失数据应该用没在数据中的其他地方出现过的一个数字来标明(按照惯例经常使用-9)。这个数字也可以用于有单倍体和二倍体数据混合的地方(例如男性中的X和常染色体位点)。缺失数据值是与描述数据集特性的其它参数一起被设置的。2.5 格式化的错误。我们已经进行了相当仔细的错误检查,以保证数据集的格式正确,并且程

17、序将试图提供一些关于存在的任何问题的性质的提示。前端要求在每行的结束回车,不允许在行内回车;Structure的命令行版本以与处理空格或制表符(Tab )同样的方式处理回车。可能出现的一个问题是,在将数据导入Structure之前用来组装数据的编辑程序可能引入隐藏的格式化字符,经常在行的末尾,或者在文件的末尾。前端能自动除去大多数这些错误,但是当数据文件好像处于正确的格式时,这类问题可能对错误负责。如果你正在把数据导入到一个Unix系统,dos2unix 功能可能对彻底清理这些错误有帮助。3 用户的建模决策3.1 祖先模型个体的祖先有4个主要模型:(1) 非混合模型(个体离散地来自一个群体或者

18、另一个群体);(2)混合模型(每个个体从K 个群体中的每一个抽取他/她的基因组的一部分);(3)连锁模型(象混合模型一样,但是连锁的位点更可能来自相同的群体);(4)有先验信息的模型(允许Structure 使用关于取样地点的信息:或者帮助用弱的数据进行的聚类,发现迁移者,或者预定义一些群体)。关于模型1、2 、 4的详情见Pritchard等(2000a )和Hubisz 等(2009),关于模型 3的详情见Falush等(2003a)。1. 非混合模型。每个体完全来自K 个群体之一。输出报告个体i来自群体k的后验概率。每个群体的先验概率是1 / K。这个模型适合于研究完全离散的群体,并且经

19、常比混合模型在检测微妙的结构方面更强有力。2. 混合模型。个体可能具有混合的祖先。这可以表述为个体i从群体k中的祖先那里继承了他的/她的基因组的一部分。输出记录这些比例的后验平均估计值。以祖先向量q (i)为条件,每个等位基因的起源是独立的。我们推荐这个模型作为大多数分析的起始点。这是处理真实群体的大多数复杂性的一个相当灵活的模型。混合是真实数据的一个普通特征,如果你使用非混合模型,你或许不会发现它。混合模型也能以一种自然的方式处理混合的区域(hybrid zones)。表2:数据文件的格式,为两行的格式。大多数这些组成部分是可选的(欲了解详细信息,参见正文)。M l是标记l 的标识符。r l

20、表明哪个等位基因,如果有的话,在每个标记上是隐性的(仅针对显性的基因型数据)。D i,i+1是标记i 和i + 1之间的距离。ID (i)是个体 i的标签,g (i)是个体i 的一个预先定义的群体索引(PopData );f (i)是一个被用来合并学习样品的标签(PopFlag);l (i)是个体i的取样地点(LocData);(i)可以储存个体 i的表现型;y 1(i), ., yn(i)用于储存额外的数据(这些数据会被程序忽略);(x li,1, xli,2)储存个体i 在位点l上的基因型。p i(l)是个体i中的标记l的连锁相的信息。3. 连锁模型。这实质上是将混合模型推广,来处理“混合

21、连锁不平衡”,即,在最近混和的群体中的连锁标记之间出现的相关性。Falush等(2003a)描述了该模型和更详细的计算。基本的模型是,过去的t个世代,有一次混合事件,将 K个群体混合了。如果你考虑单个染色体,它由一系列“块(chunk)”组成,这些“块”是从混合时的祖先那里作为离散的单位遗传来的。出现混合LD是因为连锁的等位基因经常在相同的块上,因此来自相同的祖先群体。块的大小被假设为独立的指数随机变量,具有平均长度1/t (以摩尔根为单位)。在实践中我们估计“重组率”r,所用的数据对应于从现在的块切换到新的块的比率。个体i里的每个块以概率 qk(i)独立地来自群体k,其中q k(i)是那个个

22、体的祖先来自群体k的比例。总起来,新模型保留了混合模型的主要要素,但是在单个块上的全部等位基因必须来自相同的群体。新的MCMC算法结合了可能的块大小和断点。它对于每个体报告总的祖先,考虑连锁,并且也能报告染色体的每一点儿的起源的可能性,如果用户想要的话。当使用连锁的位点来研究混合的群体时,这个新模型表现得比原先的混合模型更好。它得到对祖先向量的更准确的估计,并且能从数据中抽出更多的信息。这对混合作图应该是有用的。该模型不是用于处理非常紧密连锁的标记之间的背景LD的。显然,这个模型是大多数混合群体的复杂现实的大大的简化。不过,混合的主要的效应是在连锁的标记之间建立长远的相关性,因此我们这里的目的

23、是在一个相当简单的模型中将那个特征包括进来。计算比混合模型的要慢一点,特别对于大的K和不知道连锁相的数据。不过,它们对于数千个位点和个体以及多个群体来说还是切实可行的。如果有关于标记的相对位置的信息(通常是一张遗传图谱),则只能使用该模型。4. 使用先验的群体信息。Structure的默认模式只使用遗传学的信息来了解群体结构。不过,经常有可以与聚类相关的附加信息(例如,取样的个体的物理特性或者取样的地理位置)。目前,Structure可以用3种方式使用这种信息: LOCPRIOR模型:利用取样位置作为先验信息来辅助聚类用于结构信号比较弱的数据集。有一些数据集,其中有真实的群体结构(例如,取样位

24、置之间的显著的F ST),但是信号太弱,标准的Structure 模型不能发现。对于标记很少、个体很少或者非常弱的Structure,经常是这样的情况。在这种情形下,为了提高性能,Hubisz等(2009)发展了新模型,利用地点信息来辅助聚类。对于这样的数据集,其中结构的信号太弱以致使用标准的Structure模型不能被发现,新模型经常能提供群体结构和个体祖先的准确的推断。简言之,LOCPRIOR 模型的基本原理如下。通常,Structure假定个体的所有部分都大约是先验等可能的。因为可能的部分的数目非常巨大,对于Structure来说,需要信息非常丰富的数据来断定个体的任何特定的部分被聚类到

25、群具有强的统计支持。相反,LOCPRIOR 模型认为实际上,来自相同的取样位置的个体经常来自相同的群体。因此,建立LOCPRIOR 模型以期望取样的位置可能关于祖先是信息丰富的。如果数据表明位置是信息丰富的,那么LOCPRIOR模型允许Structure使用这种信息。Hubisz等(2009)发展了一对 LOCPRIOR模型:一种用于没有混合的情况,一种用于有混合的情况。在两种情况中,内在的模型(以及似然函数)与标准版本相同。关键的差别是允许structure使用地点信息来帮助聚类(即,通过修改先验信息来得到与位置有关的更偏爱的聚类解决方案)。LOCPRIOR模型具有合乎需要的特性:(i)当不

26、存在结构时,它们不倾向于发现结构;(ii)当个体的祖先与取样位置不相关时,他们能够忽视取样的信息;(iii )当群体结构的信号非常强大时,旧模型和新模型基本上给出相同的答案。因此,我们建议在大多数数据数量非常有限的情形下使用新模型,特别是当标准的Structure模型不提供一个Structure的清晰信号时。但是,因为现在已经积累了标准的Structure模型的很多经验,我们建议对于信息非常丰富的数据集将基本模型作为默认(Hubisz 等等,2009)。为了运行LOCPRIOR 模型,用户必须首先为每个个体指定“取样地点”,作为一个整数编码。即,我们假定样品是在一组分离的位置收集的,并且我们不

27、使用关于地点的任何空间信息。(我们认识到,在一些研究中,每个个体可能在一个不同的地点收集,因此将个体塞进一套更小的分离的地点可能不是对数据的理想的代表。) “地点”也可以代表一个表现型、生态型(ecotype)或者民族团体(ethnic group)。地点被键入到输入文件中,要么在PopData列(设置LOCISPOP = 1)中,要么作为一个单独的LocData 列(参阅第 2.3节)。为了使用LOCPRIOR 模型,你必须首先指定或者用混合模型用非混合的模型。如果你使用的是图形用户界面版本,则勾选“use sampling locations as prio”(用取样位置作为先验信息)框。

28、如果你使用的是命令行版本,则设置LOCPRIOR = 1。(注意,LOCPRIOR与连锁模型不兼容。) 我们迄今的经验是当不存在结构时,LOCPRIOR模型不偏向于检测到假的结构。你可以把相同的诊断用于是否有真的结构,当你没使用LOCPRIOR时。另外查看r的值可能有帮助,它确定由位置携带的信息的数量。r的值接近1,或者2)中形势更复杂,因为甚至对共显性标记都可能有基因型的含糊。在杂合体中准确地识别出基因型经常是困难的。例如在三倍体中,表现型AB可能是AAB或者 ABB。如果 Structure在RECESSIVEALLELES=0的条件下运行,那么就假定没有含糊。对于多倍体,当RECESSI

29、VEALLELES=1时,Structure 允许数据包含具有基因型模糊和不具有基因型模糊的位点。如果一些位点不含糊那么设置代码NOTAMBIGUOUS为一个整数,这个整数不与数据内的的任何等位基因相匹配,并且不等于MISSING(缺失)。然后在输入文件顶上的隐性等位基因的行里为不含糊的位点放置NOTAMBIGUOUS代码。如果不是那样,而是在一个特定的位点上等位基因全部是共显性的,但是有关于每个的数目(例如为在四倍体里的微卫星)含糊,那么就把隐性等位基因代码设置为MISSING。最后,如果有隐性等位基因,并且还有关于每个等位基因的数目的含糊性,则设置隐性等位基因代码来表明哪个等位基因是隐性的

30、。存在拷贝数含糊性的等位基因的编码与存在显性标记的那些相似。因此,举例来说,在四倍体中,观察到3个共显性位点B、C和D,这应该被编码为B C D D或者等效地 B B C D或者任何包括3个等位基因中的每一个的其他组合。它不应该被编码为B C D (MISSING),因为这表明该特定的个体在所指的位点是三倍体。如果在这个位点上存在一个隐性等位基因A ,它也不能被编码为 B C D A。Pr(K)的估计: 当RECESSIVEALLELES被用于二倍体时,Markov 链的每个步骤上的似然值是通过在可能的基因型上求和来计算的。为了便于编码,当要么PLOIDY2 要么使用了连锁模型时,我们以当前推

31、算的(imputed)基因型为条件。这减小似然值,并且好像大大地扩大似然值的方差。有限的经验表明在后一种情况下这导致对K的估计效果变差,你应该把K的这种估计看做是不可靠的。5 K(群体数目)的估计在描述这个程序的我们的文章里,我们指出这个问题应该被小心对待,由于两个原因:(1)要获得对Pr(X|K)的准确估计在计算上是困难的,我们的方法仅仅提供一个专门的(ad hoc)近似;(2)K的生物学解释可能不是简单的。在我们的经验里我们发现真正的困难在于第2个问题。我们的用于估计K的程序一般在具有少量离散的群体的数据集中计算效果较好。不过,很多现实世界的数据集并不准确地符合Structure模型(例如

32、,由于通过距离或者近交而产生的隔离)。在那些情况里对于什么是K 的正确值可能没有一个自然的答案。或许由于这种原因,在真实的数据中我们的模型选择标准的值随着增加的K而继续增加是不稀有的。那么集中于捕获数据中的大多数结构的K的值通常是讲得通的,这在生物学上似乎是合理的。5.1 估计 K 的步骤1. (命令行版本)在文件extraparams里把COMPUTEPROBS和INFERALPHA 设置为1。(前端版本)确保允许改变。2. 对不同的MAXPOPS (K)值运行MCMC方案。最后它将输出一行“Estimated Ln Prob of Data”。这是ln Pr(X|K)的估计。你应该对每个K

33、 独立地运行几次,以便证实不同运行得到的估计值是一致的。如果与不同的K获得的估计值的变异性相比,一个给定的K的不同运行的变异性是显著的,那么你可能需要使用更长的运行或者更长的burnin时期。如果lnPr(X| K)看起来是双峰的(bimodal )或者多峰的(multimodal),则MCMC方案可能找到不同的答案。你可以对此进行验证,通过比较在单个K 上的不同运行的 Q。(参看Pritchard et al. (2000a)的数据集2A(Data Set 2A),也见下面有关多峰性(Multimodality )的部分,)。3. 计算K的后验概率。例如,对于论文中的数据集 2A(这里K是2

34、),我们得到K ln Pr(X|K)1 -43562 -39833 -39824 -39835 -4006我们一开始可以假定一个关于K = 1, ., 5的均匀先验分布。然后根据贝叶斯定理, Pr(K = 2)由下式给出:(3)398435623406eee 如果我们将该式简化为下面的公式,计算就会更容易(4)13740240.1e5.2 轻微的违背模型可能导致过高估计 K 当存在真正的群体结构时,这导致不连锁的位点之间的LD,以及违背哈迪温伯格比例。粗略地说,这是被Structure算法使用的信号。但是模型的一些违背也能导致哈迪温伯格或连锁不平衡。这些包括近交和基因型鉴定错误(例如偶然的、未

35、被发现的无效的等位基因)。即使在没有群体结构的情况下,对于K 1,这些类型的因素也可能导致弱的统计信号。从2版本开始,我们提出相关的等位基因频率模型(correlated allele frequency model)应该被用作默认,因为它在困难的问题上经常实现更好的执行,但是用户应该意识到,在这样的设置中可能更容易过高估计K,与独立的频率模型下相比(Falush et al. (2003a))。 下一节讨论怎样确定推断的结构是否是真实的。5.3 关于选择 K 的非正式提示;结构是真实的吗?有两个非正式的提示,可能有助于选择K。第一个是,对于比合适的值(有效零)更小的K , Pr(K)常常是非

36、常小的,对于更大的K,则有或多或少的高原,如同上面显示的数据集2A的例子中那样。在这种情形中(其中 K的几个值给出log Pr(X|K)的相似的估计下),似乎这些估计中最小的常常是正确的。对于我们通过“或多或少的高原”所表示的东西,要提供一个坚固的规则有点难。对于小数据集来说,这可能意味着log Pr(X|K)的值在5-10的范围内,但是Daniel Falush写道“在非常大的数据集中,K = 3和K = 4之间的差别可能是50,但是如果K = 3和K = 2之间的差别是5 000,那么我将肯定选择K = 3”。想要使用更正式的标准(这种标准将这一点纳入了考虑)的读者可能对Evanno等(2

37、005)的方法感兴趣。我们认为考虑这一点的一种明智的方法是就模型选择而言。即,我们可能不总是能知道K 的真值,但是我们应该致力于捕获数据里的主要结构的 K的最小的值。第二提示是,如果真的有单独的群体,那个,通常有许多有关的值的信息,一旦Markov 链收敛, 通常将相对恒定(范围经常为0.2或更少)。不过,如果没有任何真正的结构,在运行过程中通常变化很大。这一点的一个必然的结果是当没有群体结构时,你将通常将看到分配给每个群体的样本的比例是大致匀称的(每个群体中1/ K),大多数个体将被公平地混和。如果一些个体被强烈地分配到一群体或者另一个,以及如果分配给每组的比例不对称,那么这是你有真正的群体

38、结构的强的迹象。假定你有两个清楚的群体,但是你试图决定是否这些中之一是更进一步再分(例如,Pr(X|K = 3)的值类似于P(X|K = 2),或者也许比P(X| K = 2)还大一点)。那么,你能尝试的一件事情是只使用你怀疑可能被再分的群体内的个体来运行Structure,看看是否有一个如上所述的强信号。总之,你应该对根据小的Pr( K)的差别推断的群体结构持怀疑态度,如果(1)对于分派没有清楚的生物学解释,(2)对全部群体的分派大致匀称,没有个体被强烈地分配。5.4 通过距离数据的隔离通过距离的隔离指的是这样的想法:个体可能跨越一些地区呈空间分布,带有本地分散的。在这种形势下,等位基因频率

39、跨越地区逐渐变化。基础的 Structure 模型对来自这种情况的数据不很适合。当这发生时,推断的 K 的值,以及在每组中的相应的等位基因频率可能相当任意。取决于取样的计划,大多数个体可能在多个组中具有混合的成员身份。即,算法将尝试使用 K 的不同组分的加权平均数来对跨越地区的等位基因频率建模。在这样的形势下,结果的解释可能具有挑战性。6 背景 LD 和其他 miscellania 6.1 序列数据,紧密连锁的 SNP 和单体型数据Structure模型假定位点在群体内是独立的(即,在群体内不处于LD )。序列数据或者来自非重组区域的(比如Y染色体或者 mtDNA)的数据很可能违反这个假定。如

40、果你有序列数据或来自多个独立区域的密集的SNP数据,那么尽管数据不完全适合模型,Structure实际上可能表演得想当好。粗略地说,这将发生,倘若跨越不同的区域有足够的独立性,以至于区域内的LD不在数据中占优势。当有足够的独立区域时,区域内的依赖性(dependence)的主要代价将是Structure 在特别的个体的分派中低估不确定性。例如,Falush等(2003b)把Structure用于来自H. pylori的MLST(多位点序列)数据,以了解H. pylori的群体结构和迁移历史。在那种情况下,在区域内有足够的重组以至于群体结构的信号超过了背景LD 。(关于MLST数据的更多情况,也

41、见第10节)。在人类的应用中,Conrad等( 2006)发现来自36个连锁的区域的3000个SNP生产明智(但是嘈杂)的答案,在一个全世界的样本中,基本上与基于微卫星的以前的结果一致见他们的Supplementary Methods Figure SM2。然而,如果数据被一个或者少数非重组的或在低重组的区域主导,那么,Structure可能被严重地误导。例如,如果数据只由Y 染色体数据组成,那么估计的结构大概将反映出关于Y染色体树的某些事情,而非群体结构本身。使用这样的数据的影响很可能是:(1)算法低估祖先估计中的不确定性的程度,在最坏的情况下,可能是有偏的或者不准确的;(2)K 的估计不可

42、能表演得好。如果你有 Y或者mtDNA数据加上许多核标记,一个安全和有效的解决办法是重新编码来自每个连锁区域的单体型,以至于单体型被描述为一个具有n等位基因的单个位点。如果有许多单体型,则可以把相关的单体型归类到一起。注意连锁模型不一定比(非)混合模型对于处理这些问题更好。连锁模型不是设计来处理群体内的背景LD的,并且很可能被类似地干扰。6.2 多峰性Structure算法在参数空间中的一个随机的地方开始,然后朝着参数空间的一个峰收敛。(在这里的上下文内,峰可以被看作,松弛地讲,具有高的后验概率的一个聚类解。)当不使用先验的标签时,在K类的编号过程中没有固有的意思,因此有K !个对称的峰,对应

43、于对类标签的排列。理论上,Structure可以在这些峰之间切换,但是这通常对真正的数据集不发生(Pritchard et al., 2000a)。为准备用于出版的图,诺厄罗森堡(Noah Rosenberg)的实验室有一个有帮助的程序,CLUMPP,在对数据绘图之前跨越不同的运行把类标签排列成行(第10节)。除了这些对称的峰之外,一些数据集可能还有另外的非对称的峰。Structure的当前的实施通常不在实际长度的运行过程中在这些之间穿过。这表明不同的运行可能产生显著不同的答案,并且更长时间的运行或许将不能修正这一点。这主要是对于非常复杂的数据集的一个问题,具有大的K值,比如K 5或者K 10

44、(但是见Pritchard等(2000a)中的数据集2A的例子)。你可以检查Q的结果,以了解这是否发生了。Rosenberg 等(2001) 提出了这类情形的仔细的分析,对一个数据集,其中估计的K大约是19。6.3 当大多数个体被混合时,估计混合比例如果亲本的群体的代表非常少,估计混合比例可能特别具有挑战性。在Pritchard等(2000b)中对于模拟数据有一个这样的例子。数据假定是来自大多数个体有某种程度的欧洲祖先的美国黑人群体的一个样本。对那些数据来说,估计的祖先比例与真实(模拟)值高度相关,但是祖先的实际比例是有偏的。那个例子也是我们用真正的数据的更新近的经历的代表。这发生因为在缺乏任

45、何程度非掺和的个体的情况下,可能有一些不可识别性(nonidentifiability),在那里有可能把等位基因频率推得更开,把混合比例挤压到一起(反过来也是这样),获得几乎一样的模型拟合。当有强烈非对称的混合时,使用POPALPHAS = 1(每个群体单独的)能帮助一点,但是不解决基本的问题。因此,在这些情形下的混合性的估计应该被谨慎对待。7 从命令行运行 Structure有许多由用户设置的程序参数。这些在两个文件中(mainparams和extraparams),每当程序执行的时候,这些文件被读取。mainparams 指定数据文件的输入形式和最基本的运行参数。extraparams指定

46、多种程序选项。你需要设置mainparams里的所有值,而以extraparams里的默认值开始运行或许没有问题。注意默认模型假定混合,并且不使用用户定义的PopData 。在这两个文件中每个参数都以大写字母打印,在参数前面有“#define”(它们在整个这份资料中也全部以大写字母打印。) 值是紧跟在参数的名字之后立即被确定的(例如“#define NUMREPS 1000”把MCMC的重复数量设置为1000)。继每个参数定义之后,有一个简短的注释(用“/”标明),描述这个参数。这包括期望的值的类型。这些包括: “(str)”,用于字符串(用于输入和输出文件的名字); “(int)”,用于整数

47、;“(d)” ,用于双精度数(即,一个实数,比如3.14;“(B)” ,用于布尔数(Boolean)(即,参数取值为TRUE或FALSE,通过分别把这个设置为1或0)。程序对参数的次序不敏感,因此你可以重排它们或者增加说明,等等。一次给定的运行所使用的全部参数的值被打印在输出文件的末尾。7.1 程序参数在这一节里我们列举可以被用户确定的所有参数。这些被根据用在 Structure 的命令行版本的参数文件排序。7.2 文件 mainparams 里的参数在运行程序之前,用户需要确定所有这些参数。这些参数的一些(LABEL, POPDATA, POPFLAG, PHENOTYPE, EXTRACO

48、LS)表明是否特殊类型的数据存在于输入文件中;这些在第 2 节中描述。基本的程序参数MAXPOPS (整数) 为程序的一次特定的运行假设的群体的数目。Pritchard等(2000a)称之为K。有时(取决于数据的性质)有可以被使用的K的自然值,否则 K可以通过在K的不同值检查模型的配合被估计(参阅第5节)。BURNIN (整数) 在开始数据收集之前的 burnin时期的长度。(参阅第 3.3节) NUMREPS (整数 ) 在burnin之后的MCMC重复的数目。(参阅第3.3节) 输入/输出文件INFILE (字符串) 输入数据文件的名字。最大长度30个字符(或者也许更少,取决于操作系统)。

49、OUTFILE (字符串) 程序输出文件的名字( 后缀“_1”, “_2”, .,“_m”(用于中间的结果)以及“_f”(最终结果)被添加到这个名字)。有这些名字的现有的文件将被覆盖。名字的最大的长度为30个字符(或者也许更少,取决于操作系统)。数据文件格式NUMINDS (整数) 数据文件里的个体的数目。NUMLOCI (整数 ) 数据文件里的位点的数目。PLOIDY (整数) 生物体的倍性。默认是2(二倍体)。MISSING (整数) 为遗漏基因型数据给的价值。必须是一个整数,并且不可在数据集里的其他地方出现过。默认是-9 。ONEROWPERIND (布尔值) 每个个体的数据被安排在一单

50、个的行中。例如,对于二倍体数据来说,这将意味着每个位点的两个等位基因在相同的行中按照连续的次序,而不是被安排在相同的纵行里的连续两行中。关于输入格式的细节请参阅第2节。LABEL (布尔值) 输入文件包含每个个体的标签(名字)。1 = 是的;0 = 不。POPDATA (布尔值) 输入文件为每个个体包含一个用户定义的群体来源。1 = 是的;0 = 不。POPFLAG (布尔值) 输入文件包含一个指示变量,它表明当 USEPOPINFO=1(见下面)时是否使用popinfo。1 = 是的;0 = 不。LOCDATA (布尔值) 输入文件为每个个体包含一个用户定义的取样位置。1 = 是的;0 =

51、不。用于LOCPRIOR 模型。可以设置LOCISPOP = 1以便在LOCPRIOR 模型里改为使用POPDATA。PHENOTYPE (布尔值) 输入文件包含一个表现型信息的列。1 = 是的;0 = 不。EXTRACOLS (整数) 在基因型数据开始之前,在表现型之后的附加的数据列的数目。这些被程序忽略。0 = 没有额外的列。MARKERNAMES (布尔值) 数据文件的顶行包含对应于使用的标记的一个L名字的列表。RECESSIVEALLELES (布尔值) 数据文件的下一行包含一个L整数的列表,表明每个位点上的等位基因是隐性的。把这设置为1意味着使用的是显性标记模型。MAPDISTANC

52、ES (布尔值) 数据文件的下一行(或者如果MARKERNAMES=0,则为第一行)包含相邻的位点之间的mapdistances 的一个列表。高级数据文件选项PHASED (布尔值) 供连锁模型使用。表明数据处于正确的连锁相。如果(LINKAGE=1, PHASED=0),则PHASEINFO可以被使用这是输入文件里的一个额外的行,给出连锁相的概率。当PHASEINFO = 0时每个值被设置为0.5,暗示没有连锁相的信息。当连锁模型被用于多倍体时,要求PHASED=1。PHASEINFO (布尔值) 每个个体的基因型数据的行后面有一行关于单倍型连锁相的信息。这只供连锁模型使用。有关详细情形,参

53、阅第2节和3.1节。MARKOVPHASE (布尔值) 连锁相信息跟随一个Markov模型。欲了解详细信息,参见第2.2节和9.6节。NOTAMBIGUOUS (整数) 当RECESSIVEALLELES=1时,供多倍体使用。定义代码,表明一个标记上的基因型数据是不含糊的。不可与数据里的MISSING或者任何等位基因值相匹配。7.3 文件 extraparams 里的参数这些选项允许用户以各种各样的方式来精炼模型,并且做复杂的分析。默认值首先或许是好的。对于 Boolean 选项,键入 1 用于“Yes” ,或者“Use this option”;0 用于“No”或者“Dont use thi

54、s option”。程序选项NOADMIX (布尔值) 假定模型没有混合(Pritchard et al., 2000a)。(每个个体被假设为完全来自K个群体之一)。在输出中,程序不是如同在混合的情况下打印Q 的平均值,而是打印每个个体来自每个群体的后验概率。1 = 没有混合;0 = 有混合的模型。LINKAGE (布尔值) 使用连锁模型。参阅第3.1节。RLOG10START设置每单位距离的重组率r的初始值。RLOG10MIN和RLOG10MAX 确定用于log10r的最小和最大允许值。RLOG10PROPSD设置每次更新中 log10r的建议的改变的大小。前端对这些做出一些猜测,但是用户需

55、要注意,确信那些值对于特定的应用是合理的。USEPOPINFO (布尔值) 使用先验的群体信息来分派个体到群(cluster)。也见MIGRPRIOR 和GENSBACK。必须有POPDATA = 1。LOCPRIOR (布尔值) 使用地点信息来提高结构信息弱的数据的性能。FREQSCORR (双精度) 使用“F model”,其中等位基因频率跨越群体相关 (Falush et al., 2003a)。更具体地说,不是假定一个先验,在其中每个群体中的等位基因频率是来自一个均匀的Dirichlet分布的独立抽样,而是从一个分布开始,这个分布以样本的平均等位基因频率为中心。这个模型对于亲缘关系非常

56、近的群体更真实(其中我们预期等位基因 频率跨越群体相似),并且可以产生更好的聚类(第 3.2节)。F k的先验是用FPRIORMEAN 和FPRIORSD确定的。当FREQSCORR 被开启时,可能有一种过高估计K的趋势。ONEFST (布尔值) 对全部群体假定相同的F k的值(类似于Wright的传统的F ST)。这不为大多数数据推荐,因为在实践中你或许期望每个群体中的不同的分歧(divergence)水平。当K = 2时,有时可能难以分别估计F ST的二个值(但是见Harter 等(2004)。当你试图估计K时,你应该把相同的模型用于全部 K(我们建议 ONEFST = 0)。 INFER

57、ALPHA (布尔值) 根据数据推断模型参数 的值;否则 被固定在值ALPHA上,它是由用户选择的。在NOADMIX 模型下这个选项被忽略。(祖先向量Q 的先验是具有参数(, , ., )的Dirichlet 。小的 暗示大多数个体基本上来自一个群体或者另一个群体,而1 暗示大多数个体被混和。) POPALPHAS (布尔值) 为每个群体推断一个单独的 。多数情况下不推荐,但是对于具有非对称混合的情况可能是有用的。ALPHA (双精度) 混合程度的Dirichlet参数( )(如果INFERALPHA =1,这个就是初始值)。INFERLAMBDA (布尔值) 为推断一个适当的值。不为大多数分

58、析推荐。POPSPECIFICLAMBDA (布尔值) 为每个群体推断一个单独的。LAMBDA (双精度 ) 参数化等位基因频率的先验,对于大多数数据默认值1好像工作得相当好。如果大多数标记上的频率严重向低/高频率偏斜,更小的值可能导致潜在更好的表现。它好像对估计没有对其它超参数(和F)的估计那么好。先验这些值用来参数化假定的概率模型。多数情况下缺省设置应该相当明智,你可能不想要担心这些。FPRIORMEAN,FPRIORSD (双精度) 见FREQSCORR。F k的先验被取具有平均数FPRIORMEAN和标准偏差FPRIORSD的。我们的缺省设置将许多权重放于 F的小值上。我们发现这使得算

59、法对细微的结构敏感,但是增加了过高估计K的风险(Falush et al., 2003a)。UNIFPRIORALPHA (布尔值) ,ALPHAMAX (双精度) 对 假设一个均匀分布的先验,运行在0和ALPHAMAX之间。这个模型好像工作很好;其它的模型(当UNIFPRIORALPHA = 0时)是取 作为具有分布的先验,具有平均数ALPHAPRIORAALPHAPRIORB,方差ALPHAPRIORAALPHAPRIORB2。LOG10RMIN,LOG10RMAX ,LOG10PROPSD ,LOG10RSTART (双精度) 当连锁模型被使用时,切换速率r被取为在对数尺度上具有一个均匀

60、的先验,在LOG10RMIN 和LOG10RMAX之间。这些值需要由用户确定,以便就被使用的图距单位的尺度而言有意义。使用先验的群体信息(USEPOPINFO)GENSBACK (整数) 这对应于G (Pritchard et al., 2000a) 。当对个体使用先验的群体信息(USEPOPINFO = 1)时,程序测试是否每个体在最后G代有一个移民祖先,其中G = 0对应于个体本身作为一个移民。为了有适当的功效,G应该被设置得相当小(比如2),除非数据的信息非常丰富。MIGRPRIOR (双精度) 必须是在 0,1中。这是Pritchard等(2000a) 中的v。明智的值可能在0.001

61、0.1的范围内。PFROMPOPFLAGONLY (布尔值) 这个选项是2.0版新有的,使仅仅使用预先指定的个体的子集来更新等位基因频率P成为可能。为了使用这个选项,包括一个POPFLAG列,对应该用来更新P的个体设置POPFLAG=1,对不应该用来更新P的个体的设置POPFLAG = 0。USEPOPINFO打开或者不打开,都可以使用这个选项。这个选项将是有用的,例如,如果你有来自已知群体的一组准参考个体,然后你想要估计一些未知的个体的祖先。使用这个选项,每个未知个体的q估计值只依赖于参考个体组,而不依赖于样本中的其它未知个体。这个特点有时是合乎需要的。使用地点信息的 LOCPRIOR 模型

62、LOCISPOP (布尔值) 当LOCPRIOR模型打开时,这个选项指导程序使用输入文件中的PopData列作为地点数据。当LOCISPOP = 0时,程序需要一个 LocData列来使用LOCPRIOR。LOCPRIORINIT (双精度) LOCPRIOR参数r的初始值,确定群体的信息有多丰富(citepHubiszEtAl09)。我们发现LOCPRIORINIT = 1有助于取得好的收敛。MAXLOCPRIOR (双精度) r的范围是来自(0,MAXLOCPRIOR)。我们建议MAXLOCPRIOR = 20。输出选项PRINTNET (布尔值) 打印聚类之间的“净核苷酸距离”。群体A和

63、B之间的这个距离D AB被计算为, (5)(), ,1()2lJLlABABAjBlj Hp其中 是群体x中位点l上的等位基因j的等位基因频率的后验平均估计, L是位点的数目,(),pJl是位点l上的等位基因的数目,其中, (6)()2,1lJLxxjljHp净核苷酸距离是分别来自群体A 和B的一对等位基因不同的平均概率,小于群体内平均杂合性。或许更直觉地,这可以被认为是来自不同群体的等位基因之间成对差异的平均数量,超出每个群体内存在的变异的数量。该距离有合适的特性,即相似的群体之间的距离接近0,并且尤其,D AA = 0。注意到距离是对称的,以至于D AB = DBA。这个距离适于画群体的树

64、来帮助直观化聚类之间的差异的水平(Falush et al., 2003b)。PRINTKLD (布尔值) 不赞成 这个选项不再可用。PRINTLAMBDA (布尔值) 打印的当前到屏幕。PRINTQSUM (布尔值) 打印当前的Q估计的摘要到屏幕;这打印PopData的每个值的平均数。SITEBYSITE (布尔值) (连锁模型)为数据里的每种基因型打印分派概率的完整的摘要。这被打印到一个单独的文件,具有后缀“ss”。这个文件可能是大的!PRINTQHAT (布尔值) 当这个被打开时,Q的点估计不仅被打印到主要的结果文件,而且被打印到一个单独的后缀为“q”的文件。为了运行姊妹程序 STRAT

65、,需要这个文件。UPDATEFREQ (整数) 对屏幕打印更新的频率。如果这 = 0则自动设置。PRINTLIKES (布尔值) 在每个迭代过程中把似然函数的当前值打印到屏幕。INTERMEDSAVE (整数) 如果你渴望在运行结束之前看见初步的结果,你可以让程序在MCMC运行期间每隔一段时间将结果打印到文件。总共打印 INTERMEDSAVE个这样的文件,在继BURNIN的完成之后相等的间隔。通过设置为0关掉这个选项。使用OUTFILE 名字创造的这些文件的名字。ECHODATA (布尔值) 把数据集的概要打印到屏幕和输出文件。(打印输入文件最顶行和最底行的开头和结尾,以便允许用户检查它已经

66、被正确地读取。) ANCESTDIST (布尔值) 收集关于每个体的Q 的分布的信息,也只估计平均值。当这被打开时,输出文件包括每个q(i)的概率区间的左端和右端。(概率区间是置信区间的贝叶斯类似物。)打印的值显示概率区间的中间100p%,其中p是0.0到1.0的范围内的一个数字,用ANCESTPINT设置。Q的分布通过记录在0和1之间的许多箱子的每一个点击(hit)的数目被估计,以便形成某种直方图。这些箱子的宽度一样大小,是使用NUMBOXES确定的。杂项COMPUTEPROB (布尔值) 在每次更新时打印数据的对数似然,并估计给定K和模型的数据的概率(参阅第5节)。这被用于估计K ,并且对于burnin(老化?)是否足够长也是一个有用的诊断。关掉这个选项的主要原因将是加速程序( 1015%)。ADMBURNIN (整数) (当RECOMBI

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!