系谱重建 colony 使用指南

如题所述

第1个回答  2022-06-03

Colony程序可以在多个计算机平台上运行,包括Windows、Mac、Linux、Unix。本文档专为Windows用户准备,但对其他平台的用户也很有用。

Colony是一个计算机程序,利用一个似然法和两个成对似然法,使用个体之间多基因座基因型,分配/推断亲子关系、同胞关系和克隆(重复【克隆或重复指的是基因型完全一样的个体】)。这些方法在下面的文章中有正式的描述。
文章略。
Colony可用于估计全同胞和半同胞关系、推断克隆或重复个体、分配亲子关系、重建亲本基因型、推断交配系统(多配偶/一夫一妻制、自交率)和生殖偏斜,以及重新估计每个标记位点的基因分型错误。 它适用于二倍体和单倍体二倍体物种,雌雄同株和雌雄异株物种。只要稍微修改数据,它也可以应用于多倍体物种(Wang和Scribner,2014年)。它可以使用有或无基因分型错误的共显性和显性标记数据。Colony的windows-gui版本也可以用来模拟具有特定亲子关系结构的基因型数据,模拟的基因型数据可以用来检查各种系谱重建方法的准确性和标记信息的充分性。
简言之,该方法假设将个体样本细分为3个子样本:后代(OFS)、候选雄性(CMS)和候选雌性(CFS)。 OFS是必不可少的,而CMS和CFS都是可选的。 OFS中的个体被分配(聚集)到K1父系和K2母系(其中K1和K2未知),而CMS和CFS中的个体(如果可用)被分配或未分配到这些K1和K2家庭中。假设子代个体是重复的(或克隆体的成员)、全同胞(共享双亲)、半同胞(仅共享双亲中的一个)或不相关的(不共享双亲),而候选个体【亲本】被假定为彼此不相关,或者是双亲或不相关的。给后代。假设标记处于连接平衡状态。违反这些假设可能会降低分析的能力,但可以通过使用更多的信息性标记进行补偿(Wang,2004年)。例如,关于被抽样个体的性别和年龄的信息可能不可用。在这种情况下,允许每个个体出现在所有3个子样本中,并且在某些情况下,亲子关系和亲子关系仍然得到令人满意的推断(Wang&Santure 2009)。同样,背景关系的存在(如表亲关系和avunculate关系,这些关系被认为是不存在的或与该方法无关的)可能会降低准确性。然而,随着标记信息量的增加,其精度迅速提高。目前的模型解释了哈代-温伯格平衡的偏差。如果需要,近亲交配(由于近亲交配或自交,或由于种群结构)可以与关系结构一起计算和估计。
Colony程序的分析结果主要包括:OFS中个体间的全同胞和半同胞分配;父子关系(如果有CMS)和母子关系(如果有CFS)分配;OFS中的重复个体;每个子代的每个基因座上的基因型推断;每个基因座上的基因型推断,不管它是否分配给CFS、CMS的候选人;每个后代的每个基因座可能的基因型错误;分配给后代的候选人的每个基因座可能的基因型错误;当使用近交模型时,近交和自受精(雌雄同株物种的自交率);考虑到推断的关系,精确估计每个位点的基因分型错误率;根据估计的兄弟姐妹频率计算的有效种群规模。
软件包Colony包括Windows的可执行文件、用户指南、示例数据集和示例分析结果。Colony程序的计算部分用Fortran 90/95编写,GUI前端用Visual Basic编写。Windows GUI允许用户准备输入数据和分析参数,运行程序,查看分析结果,并在运行期间监控和绘制中间结果。Linux和Mac平台的Colony软件包与Windows软件包在同一个网站上提供。

当前版本的Colony有以下特点:允许亲本多配。换言之,允许后代为母系半同胞、父系半同胞、全同胞、克隆(或重复)和无亲缘关系,并且所有这些关系都是共同推断的;根据兄弟关系推断克隆(或重复),考虑基因分型错误;允许利用同胞关系同时推断亲子关系;利用Bayes定理,通过考虑3个子样本中和之间重建的关系同时估计群体等位基因频率;考虑关系重建数据中的基因分型错误和突变;检测单个基因型中的基因分型错误和突变;精炼估计每个基因座的基因分型错误率;推断没有基因型数据的个体(后代和推断的父母)的基因型;适用于二倍体和单倍体物种,适用于雌雄同株和雌雄同株物种;适用于二倍体后代、单倍体后代或两者的样本;允许和估计近交,推断雌雄同株物种的自交率;全似然法和新似然评分法的选择(Wang 2012);同胞分配的不同先验或无先验的选择;根据同胞分配估计当前有效种群大小;同时使用共显性和显性标记;利用已知关系与标记数据;允许使用多个核/CPU进行并行计算(通过OpenMP和MPI);模拟具有已知关系的2代或1代基因型数据集,以便通过群体或其他系谱重建程序进行分析;Windows GUI;多个数据集的批处理运行。

本节介绍如何使用Colony的Windows GUI设置经验数据集的Colony项目。在GUI中,所有输入和输出文件都被组织成“项目”。用户在设置新项目时提供项目名称,并在安装colony程序的目录中创建具有此名称的文件夹。所有随后的输入文件和运行colony之后,项目的输出文件都放在这个项目文件夹中。无法将项目文件夹移动到其他位置,以便Colony处理它。
GUI处理大型数据集的能力有限,因为以格式化的表格形式显示数据需要大量的内存。对于大多数计算机来说,处理一个最多有2000个人和2000个位置的数据集应该没有问题。超出限制后,应考虑输入数据并以非GUI模式运行,如下所述。
按照以下步骤设置新项目并将数据输入到项目中。建议在运行Colony创建新项目之前,以所需格式准备下面描述的所有输入文件。这些文件必须是纯文本文件格式,使用逗号、制表符或空格作为分隔符。空行无效。Colony所要求的行内容可以出现在多个连续的行中,在行的末尾有一个行继续标记“&”。因此,符号“&”不能用于其他目的,例如在个体ID中。例如,个体3个位点的ID和基因型行可能是:
IndividualXXX 124 128 212 214 144 144
行可以排列成多个连续行,例如:
IndividualXXX &
124 128 212 214 &
144 144
注意,换行标记“&”不应位于字符串(如IndividualXXX)或数值(如124或12.54)内,并且应始终以一个或多个空格作为前缀。

单击File New Project(或者,单击新建项目工具菜单按钮)打开新建项目设置向导(图1)。要求您提供一个项目名称,该名称应该是一个包含少于40个字母和数字的字符串(项目名称中不允许有空格、逗号、句号、前斜杠和后斜杠等)。您还被问及项目类型,这里应该选择“经验数据分析”。单击“确定”按钮时,将在安装了Colony的目录中创建一个具有项目名称的文件夹。所有输入和输出文件将存储在此文件夹中。所有输出文件将使用相同的项目名,但扩展名不同(可自行解释)。下次运行colony加载项目时,可以使用File Open Project(或者,File Recent Projects,如果项目是最近的项目)打开项目文件夹。

在上一步中单击“OK”按钮时,将显示一个以“New Project Wizard: Input an empirical dataset”为首的新窗口。在新窗口中,提供了10页来输入数据。这些页面中的输入是连续的,因此只有在完成并选中所有以前的页面后,才能访问下一页。同样,如果返回到上一页并在那里进行任何更改,则下一页可能会丢失已输入的数据,或不选中。这是因为上一页中的数据输入可能会影响下一页中的数据输入(有效性)。如果某个页面中的数据或数据格式有任何问题,您可以(1)退出“新建项目向导”,使用Colony的内置文本文件编辑器(在File Open File中)更改数据,然后重新运行Colony;或者更方便地(2)使用外部编辑器(如记事本)更改和保存数据,然后继续设置项目。
“新建项目向导”接收每一页中给定的信息,将具有特定文件名的数据保存在项目文件夹中(必要时添加列标题),并将所有数据和参数组合到一个名为“Colony2.dat”的(默认)输入文件中,该文件在数据输入过程完成后保存在项目文件夹中。
在第1页(参见图2)中,需要设置许多参数。在大多数情况下,参数的默认值都很好。
(1)Mating system-I交配系统-I:请指定雄性和雌性交配系统。在这个特定的背景下,男性的“一夫一妻制”意味着在OFS样本中的两个有不同母亲后代的必须由两个不同的男性生育。换句话说,男性“一夫一妻制”规定在OFS样本中不存在父系半同胞。请注意,本文中的交配系统是针对所分析的样本而定义的,而不是针对采集样本的种群或物种。例如,考虑一个种群,其中雄性在繁殖季节与雌性单独交配,但在不同繁殖季节与不同雌性交配。来自多个繁殖季节个体的OFS样本可能包含来自不同母亲但来自单一男性(即父系半同胞)的后代。因此,为了进行群体分析,雄性交配系统仍应设置为“一夫多妻制”。雌性交配系统也有类似的定义。还要注意的是,当男性和女性都被定义为一夫多妻制时,标记物很少并且有基因分型错误,并且没有使用之前的亲子关系时,FL方法的计算会变得非常缓慢,因为ofs中的所有子代(相关或不相关)都可以被推断为在系谱中相关(例如,见图2a),并且必须是在计算配置的可能性时一起考虑。

第2页中(见图3),应提供有关标记的信息。

当所有的位置都具有相同的通用标记名/id(第1行)或当所有的位置具有相同的值(2-4行)时,可以极大地 简化输入 。在这种情况下,每行只需要一个输入项。例如,上面的示例输入被简化为每行一项:

符号@表示相同的值应用于所有位置(第2-4行),或相同的通用名称应用于所有标记(第1行),Colony将向其通用名称添加标记的顺序。对于不同的行,可以混合完整和简单的输入【上面这2中输入方法可以混用】。例如,第2行和第3行可以是

(3)Allele frequency等位基因频率。如果群体等位基因频率未知,并且将根据当前数据集(在该数据集内推断关系)进行估计,则单击“unknown”单选按钮,Colony将从当前样本中估计等位基因频率。如果已知种群等位基因频率或已从另一个更大、更合适的样本中估算出种群等位基因频率,请单击“known”单选按钮,然后单击“load”按钮加载等位基因频率文件。在加载之前,应按以下格式准备文件。
每个位点连续两行。第一行列出等位基因的名称/标识(使用唯一整数1~99999999),第二行列出等位基因的对应频率。同一行的等位基因(或等位基因频率)应该用逗号或空格隔开。前两行用于位点1,第三行和第四行用于位点2,…。在一个基因座内,等位基因的名称/识别必须是唯一的,但 不一定是有序的或连续的 。不同基因座的等位基因可以有相同的识别号。在后代和候选父母的基因型数据中,必须使用相同的等位基因名称/基因座标识。
注意,当等位基因频率被指定为已知时,加载的等位基因频率文件应包含在后代和候选基因型中发现的所有等位基因。否则,运行Colony时出错。另外,对于一个显性基因座,只允许有两个等位基因,并且它们总是被索引为1表示显性等位基因(带的存在),2表示隐性等位基因(纯合子时没有带)。当群体等位基因频率被错误指定时,亲子关系和亲子关系可能被高估,所有的后代都可能被推断有相同(或极少数)的亲本(见常见问题解答)。
在输入所有必需的信息后,您需要单击“Check Data”按钮来检查当前页面中输入的有效性以及与以前页面的兼容性。只有单击此按钮并通过检查后,才允许转到下一页进行输入。以下页面中的复选按钮的功能类似。

第3页要求提供关于后代基因型的信息。
(1)Number of offspring后代数量。在文本框中提供OFS样本中包含基因型的后代数量。最小值为1。
(2)Offspring genotypes后代基因型。单击“Load Genotype”按钮,将子代基因型文件加载到项目中。该文件应包含每个位点的个体ID和基因型(图4)。每个个体只需一行。第一列给出了个体的ID(最多包含20个字母和/或数字的字符串,不允许使用其他字符),第二列和第三列给出了在第一个位点观察到的个体等位基因,第四列和第五列给出了在第二个位点观察到的个体等位基因。等位基因由一个1~99999999的整数来识别。如果基因座是显性标记,那么该标记只需要一个(而不是2)列,基因型的值应该是1( 显性表型 ,带的存在)或2(隐性表型,带的缺失)。缺失的基因型用0表示共显性标记,用0表示显性标记。注意子代ID应该是唯一的。它们区分大小写,这意味着,例如,“offspring2”和“Offspring2”被视为不同的。 所有基因座缺失的后代(完全没有标记信息)不应包含在后代基因型文件中。****还建议排除标记信息很少的个体(即基因型不缺失的少数基因座)。
单倍体后代的信息与上面详述的二倍体后代的信息相同,只是每个基因座的第二等位基因应该是一个固定的数字-99。该程序读取后代的基因型数据,并通过检查每个位点的第二等位基因来确定后代的倍性。如果第二个等位基因在每个具有基因型数据的共显性基因座上为-99(即第一个等位基因为正数),则后代被视为单倍体。如果第二个等位基因在每个有基因型数据的共显性基因座上是一个正数,那么后代被认为是二倍体。如果某些共显性基因座的第二等位基因为-99,而另一个具有基因型数据的共显性基因座的第二等位基因为正数,则无法确定后代的倍性,程序将以错误消息停止。
示例子代基因型文件的一部分如下所示,当加载到群体中时,它看起来像图4。注: 列名不应包括在后代基因型文件中。它们在加载时由Colony自动添加。

单倍体后代的数据(在5个共显性基因座上)可以列为“

在所有基因座都是显性的且物种是单倍体二倍体的特殊情况下,每个基因座的后代基因型显示为一个单一的数字。在这种情况下,后代的倍性不能如上文所述确定,必须明确说明。子代取一行,第一列为子代ID(一个字符串),第二列为子代的倍性(单倍体和二倍体分别为1和2),第三列为基因座1的基因型(显性或隐性为1或2),以此类推。

子代Ox和Oy分别为单倍体和二倍体(第2列红色显示)。

第4页读到有关候选男性的信息。
(1)Number of candidate males候选男性个数。在文本框中提供CMS样本中包含的候选男性人数。注意,已知父亲也包括在CMS样本中。 最小值为0【不预设父本】,在这种情况下不推断父子关系。

第5页显示了候选女性的类似信息。
(1)Number of candidate females候选女性个数。在文本框中提供CFS样本中包含的候选女性人数。最小值为0,在这种情况下,不推断母子关系。
(2)Female genotypes (optional)女性基因型(可选)。当候选女性数量大于0时,要求用户加载包含候选女性基因型的文件。女性基因型文件的格式与后代基因型文件的格式相同,但如果已包含在后代基因型文件中的个体存在于候选女性文件中,则无需提供其基因型,只需提供其个体ID的第一列即可。
(3)候选人中包括实际母亲的可能性(可选)。对OFS样本中包含子代的实际母亲的概率进行猜测(估计)。

在第6页中,您可以输入任何已知父子关系的信息,以帮助推断未知的关系。
(1)Number of known paternal sibship/paternity已知父子关系的数量。在文本框中提供样本中包含或不包含已知父亲的已知父子关系数,最小值为0。已知的父子关系在OFS样本中包含1个或多个已知共享同一父亲的后代,无论父亲是否已知并包含在CMS中。例如,在图6所示的示例中,有4个已知的父子关系。第一个同胞包含两个后代,O1和O2,他们共享一个已知的父亲M1。第三个同胞包含2个后代,O23和O25,其父亲未知(即不包括在CMS中),因此在父代字段中以“0”表示。
(2)Mismatch threshold (optional)错配阈值(可选)。如果已知父子关系的数目大于零,将要求给出错配阈值,该阈值应为范围[0,位点个数]内的整数。它用于确定一个已知的父子二分体是否被接受。如果已知父-子二代的一对多基因型显示的不匹配(孟德尔不相容性)大于阈值,那么这种假定的已知父-子关系将被拒绝。否则,它是可以接受的,并且不会从基因型数据中推断出来。
(3)Known paternal sibship/paternity (optional)已知父子关系(可选)。如果已知父子关系的数量大于零,则要求您加载已知父子关系的文件。在文件中,每个已知的父子关系/父子关系都是一行,第一列包含父亲ID/姓名(如果男性已知并包含在CMS中),或者值为0表示父亲未知或不包含在CMS中。在上的第2列中,列出了父子关系的每个成员的ID/名称。
图6显示了一个示例。再次注意,列标题应该从原始文件中排除。在本例中,第一行表示子代O1和O2共享CMS中包含的同一父亲M1。第3行表示已知子代O23和O25与未知父亲(用0表示)共享。请注意,两个(或更多)具有不同已知父亲的父系同胞从未合并为一个单一的父系同胞;在构建关系配置时,他们总是保持独特。同一个不明父亲的后代可以与已知或未知父亲的父子关系合并。还要注意的是,一个已知或未知父亲的单亲同胞中的后代永远不会分裂成不同的亲子同胞。

在第7页中,可以输入有关任何已知母子关系的类似信息,以帮助推断未知的关系。
(1)Number of known maternal sibship/maternity已知的母系/母系数量。在文本框中提供样本中包含的已知母系同胞或母系数量。最小值为0。
(2)Mismatch threshold (optional)不匹配阈值(可选)。与3.7中定义的相同。
(3)Known maternal sibship/maternity (optional)已知的母系同胞/母系(可选)。如果已知的母子/母子数量大于零,则需要为已知的母子/母子加载一个文件。在文件中,每个已知的母系同胞都是一行,第一列包含母亲ID/姓名(如果女性已知并包含在CFS中),或者值为0表示母亲未知或不包含在CFS中。在上的第2列中,列出了sibship的每个成员的ID/名称。

在某些情况下,我们从年龄或其他信息中知道,某些候选男性绝对不可能成为某个特定后代的父亲。这些信息可以作为输入,帮助更准确地推断父母的年龄。 在第8页中,您可以为每个后代输入被排除为父亲的候选雄性。
(1)任何排除亲子关系的后代数量。在文本框中提供每个人至少有一个已知排除的候选男性作为其父亲的后代数量。最小值为0(图7)。
(2)排除亲子关系(可选)。如果排除亲子关系的后代数量大于零,则需要为排除的候选雄性加载一个文件。每一个排除了亲子关系的后代都有一排。行的第一个条目是子代ID/名称,后面是排除子代父代的候选雄性的ID。

与排除亲子关系类似(见上文第3.9条),在第9页的分析中,也可以将已知排除亲子关系作为信息输入。

在某些情况下,我们知道一个后代不可能与样本中的一个或多个其他后代共享同一个父亲。这些信息可以作为输入,帮助更准确地推断亲子关系。在第10页中,您可以为每个子代输入被排除为父系兄弟姐妹的子代。没有被排除在外的个体作为兄弟姐妹的后代不应被列出。
(1)有除外父、兄弟姐妹的子女数。在文本框中提供每个人至少有一个已知排除的个体作为其亲子兄弟姐妹的后代数量。最小值为0(图8)。
(2)排除亲生兄弟姐妹(可选)。如果有任何排除的父兄弟姐妹的子代数大于零,则需要为排除的父兄弟姐妹加载一个文件。每一个有一个或多个被排除在外的父系兄弟姐妹的后代都有一排。行的第一个条目是子代ID/名称,后面是排除父代兄弟姐妹的子代的ID。在图8所示的示例中,O5、O3和O4与O1不共享同一父亲。但是,它没有提到O3、O4和O5之间的关系。他们可以也可以不共享同一个父亲。

与排除的亲子关系相似(见上文第3.11条),已知排除的亲子关系也可作为信息输入第11页的分析中。

当一个经验数据分析或模拟运行完成后,分析结果将被定向到具有相同名称但不同自解释扩展名的多个纯文本文件。对于经验数据分析,文件名正好是项目名。对于模拟,文件名是带有后缀“_i”的项目名,其中i(=1~n,n为复制数)表示第i次复制。在下面,通配符*表示文件名,记住模拟数据和经验数据分析之间的差异。
其他模拟数据文件(见下文)也可用于模拟运行。这些文件有不同的但不言自明的名称,后缀为“_i”,扩展名为“.txt”。
所有这些模拟数据文件和分析输出文件都在项目文件夹中,并且可以被任何文本编辑器读取。它们可以导入到Excel或任何其他测试编辑器中。最好,它们可以由柯罗尼的图形用户界面查看,以表格和图形的形式显示结果。通过选择单元格并按“ctrl c”,可以将这些表复制到剪贴板。同样,可以通过右键单击图形将图形复制到剪贴板。

柯罗尼推断出的完整sib-dyads列在一个名为“*的文件中。全西比亚德”。可以通过单击Windows中的“查看结果”“fullsib-dyad”加载结果。在每一行上,列出了完整sib-dyad的ID,然后是这样一个dyad的概率。示例如下所示。在Windows版本中,可以通过单击相应的列标题,根据子代ID或概率对Dyads进行排序。如常见问题13.4所述,计算完全SIB Dyad的概率。注意,对于一对SIB个体A和B,只列出了A、B和B这两个可能的无序二元中的一个