跳到内容

jphill01/HAC模拟。

存储库文件导航

HAC模拟

生成状态 执照

HAC模拟(H(H)阿普洛特类型A类累积C类曲线模拟ulator)是一种新的基于非参数随机(Monte Carlo)种群的局部搜索优化算法,用R编写,用于模拟单倍型累积曲线。它可以用于确定DNA条形码可能需要的样本大小,特别是与恢复给定物种可能存在的总单倍型变异有关。

迄今为止进行的大多数DNA条形码研究表明,由于研究成本的原因,每个物种的样本数量为5-10个。然而,研究表明,低样本量可能会大大低估地理分布广泛的分类群的单倍型多样性。本算法用于更准确地确定样本大小,以发现给定物种可能存在的所有假定单倍型。这种方法的意义包括加快生命条形码数据系统(BOLD;http://v4.boldsystems.org/)或类似数据库,如GenBank(https://www.ncbi.nlm.nih.gov/genbank/).

在模拟算法中,物种单倍型被视为不同的字符标签(1,2,…),其中1表示最常见的单倍型,2表示第二常见的单倍型,依此类推。

替换文本

然后,该算法以迭代方式随机采样物种单倍型标签,直到观察到所有唯一的单倍型。其想法是,目前在BOLD中编目的物种单倍型变异水平可以作为特定物种可能存在的总单倍型多样性的指标。

替换文本

替换文本

除了DNA条形码基因(5'-COI,rbcL/matK,ITS区域)之外的分子位点可以与HACSim一起使用(例如,细胞周期b条).

用法

HACSim包括三个主要功能:

>HACHypothetical()>HAC实际()>HAC.simrep()

HAC.simrep()的函数参数从HACHypothetical()或HACReal()传递,如下所示:

  • N个=特定物种的观察个体数(DNA序列)

  • 赫斯塔尔=特定物种观察到的单倍型(唯一DNA序列)数量

  • 问题=给定物种的单倍型频率分布向量(长度必须为赫斯塔尔和之和为1)

  • 烫发=生成物种单倍型累积曲线的排列数(烫发默认为10000)

  • 第页=要恢复的物种单倍型比例(第页默认为=0.95)

  • 符合类型=绘图和计算的置信区间类型(“分位数”或“渐近”之一)。配置文件类型默认为“分位数”)

  • 配置级别=图形输出和置信区间计算的期望置信水平
    (配置级别默认为=0.95)

  • 子样本=是否应采集单倍型标签或DNA序列的随机子样本(子样本=默认为FALSE)

  • 支柱=单倍型标签或DNA序列与样本的比例子样本=真
    (支柱默认为NULL)

  • 数字iters=要计算的迭代次数(数字iters=空(,all)默认情况下;也可以是1)

  • 进步=是否应将迭代输出打印到R控制台?(进步=默认为TRUE)

  • 文件名=保存模拟结果的文件名(文件名=默认为NULL)

烫发控制生成的单倍型累积曲线的平滑度。作为烫发→ ∞, 单倍型积累曲线的平滑化及其途径赫斯塔尔渐进地。

HAC.simrep()第一次迭代的结果输出反映了BOLD中给定物种的当前采样努力水平。如果没有达到所需的单倍型恢复水平,则执行连续迭代,直到所需的捕获单倍型部分至少达到第页.

设置第页=0.95对应于发现给定物种可能存在的95%的单倍型。在这个水平上,生成的单倍型累积曲线达到接近零的斜率,进一步的采样工作不太可能发现任何新的单倍体。

HAC.simrep()输出简单的“采样紧密度度量”,用于整体单倍型采样完整性。报告了取样(观察到)和缺失(未观察到)的物种单倍型的绝对(计数)和相对(比例),以及揭示特定数量的物种单倍型所需样本大小的估计值,以及为给定物种随机取样所需额外样本的数量。除了单倍型累积曲线外,还显示了描述物种单倍型频率分布的图。

整体单倍型/样本取样完整性的取样紧密度测量由以下公式给出(菲利普斯等。, 2015):

  • 抽样单倍型的平均数量:

  • 未取样单倍型数量:

  • 单倍型(标本)取样比例:

  • 未取样的单倍型(样本)比例:

  • 的平均值:

  • 未取样样品的平均数量:

除了用户为指定唯一值之外N个,赫斯塔尔问题,也可以更改默认参数以产生更有趣的输出(例如,单倍型标签或DNA序列的子采样)。可能需要增加烫发为了平滑曲线,但这将大大增加算法的运行时间。

运行仿真

要运行算法,请在新的R脚本中执行以下操作:

  1. 使用标准R变量赋值设置所有所需的算法输入参数。

  2. 运行以下任一行代码来模拟假想或真实物种:

    >HACHypothetical(…)#用户必须输入所需参数>HACReal(…)#用户必须输入所需参数
  3. 运行模拟器

    >HAC.simrep(…)#用户必须传递来自HACHypothetical()或HACReal()的输出

根据模拟输入参数的大小,该算法在其当前形式下,可以很慢地达到完全收敛。对于单倍型频率相等的物种,单倍型积累曲线的饱和(通常)会很快达到(当N个=赫斯塔尔). 另一方面,对于具有许多罕见单倍型的物种,生成的单倍型积累曲线将需要更长的时间才能达到渐近线,因为罕见单倍型不会像显性单倍型那样频繁地采样。

要成功运行模拟算法,必须满足以下条件:

  • N个必须大于1

  • N个必须大于或等于赫斯塔尔

  • 问题总和必须为1且长度必须为赫斯塔尔

示例(上面的步骤2)

  1. 等单倍型频率-假设物种

  • N个= 100

  • 赫斯塔尔= 10

  • 问题=代表(1/Hstar,Hstar)

    >HACSObj<-HACHypothetical(N,Hstar,probs,…)#如果需要,可以指定其他参数>HAC.simrep(HACSObj)
  1. 单倍型频率不等-湖白鱼(鲱形白鲑)

  • N个= 235

  • 赫斯塔尔= 15

  • 问题=c(215/N个,代表(3/N个,2),代表(2/N个,2),代表(1/N个,10))(或参见自定义用户数据(见下文)

    >HACSObj<-HACReal()#不需要输入参数;然而,用户可以提供更改的默认值>HAC.simrep(HACSObj)

自定义用户数据

用户可以实现从BOLD(不一定是5'-COI)中挖掘的自定义物种条形码数据集。的值N个,赫斯塔尔问题通过R包“ape”(系统发育和进化分析;Paradis,2004)和“pegas”(R中的系统发育和演化;Paradies)自动计算等。(2010)),因此在运行HAC.simrep()之前无需指定这些参数。运行HAC.simrep()时,将出现一个弹出窗口,提示用户选择先前对齐/修剪的FASTA DNA序列文件。

注释:输入的序列比对文件应无缺失/不明确的核苷酸数据(Ns、间隙(--)和IUPAC模糊代码),以避免过高估计种内单倍型多样性。

用户可以使用参数对DNA序列或单倍型标签进行子采样子样本支柱这可用于模拟个体/单倍型的迁移/基因流,或减少计算开销。

湖白鱼652 bp 5'-COI条码序列的对齐和修剪(鲱形白鲑) (示例2以上),可从此存储库下载。

算法可用性

HACSim的稳定版本可作为包从综合R存档网络(CRAN)下载。

>install.软件包(“HACSim”)>库(HACSim)

HACSim参考手册包括内置函数及其正确使用说明,可以通过键入

> ?HAC模拟

或者,HACSim的开发版本可以通过以下方式从R中的GitHub直接下载

>库(devtools)>开发工具::install_github(“jphill01/HACSim.R”)

重要注意事项

HACSim是一种非参数方法——它假设单倍型抽样代表真正的遗传变异。因此,它最适用于已经取样良好的分类群。

由于HACSim采用随机抽样,因此超出了抽样充分性的估计值(Nstar公司)以及其他紧密性度量,在独立运行HACHypothetical()和HACReal()时会有所不同。

一项广泛的模拟研究(即将发表)表明,HACSim很容易恢复所观察到的所需水平的单倍型多样性(第页)基于假设和真实物种场景。然而,最终用户必须仔细平衡建议的样本量估计值与其他因素,如研究预算和足够样本采集所需的时间。

其他功能

通过以下功能可以模拟HACSim中的DNA序列

>模拟序列()

用户将能够指定以下参数:

  • 数字序列=给定模拟物种的DNA序列数

  • num.haps个=给定模拟物种的唯一单倍型数量

  • 长度.seqs=给定模拟物种的DNA序列的碱基对长度

  • 核频率=给定模拟物种的核苷酸频率分布向量(长度必须为4,总和为1)

  • count.haps(计数)=给定模拟物种的单倍型频率分布向量(长度必须为num.haps个和之和为1)

  • 密码.tbl=密码表(其中之一“标准”,“脊椎动物线粒体”“无脊椎动物线粒体”)

  • 子模型=DNA替代模型(其中之一“JC69”,“K80”,“F81”“85港元”)

  • mu.比率=总核苷酸突变率/位点/世代(针对“JC69”“F81”仅适用于型号)

  • 传输速率=核苷酸转换率/位点/生成(对于“K80”“85港元”仅适用于型号)

  • 转换日期=核苷酸转换率/位点/生成(对于“K80”“85港元”仅适用于型号)

突变、转换和颠倒是根据二项式分布生成的,其概率等于核苷酸替换率(mu.比率,传输速率转换日期).

目前,DNA比对保存到用户的工作目录中。然后可以通过HACReal()和HAC.simrep()运行单倍型累积曲线的模拟。

引用此作品

在使用HACSim时,以下出版物可能会引起兴趣并值得引用:

菲利普斯,J.D。、Gwiazdowski,R.A.、Ashlock,D.和Hanner,R.(2015)。探索足够的取样努力来描述种内DNA条形码单倍型多样性:来自射线鱼的例子(脊索动物:Actinopterygii)。DNA条形码,: 66-73. DOI:10.1515/dna-2015-0008。

菲利普斯,J.D。Gillis,D.J.和Hanner,R.H.(2019年)。物种内遗传多样性的不完全估计:DNA条形码的含义。生态学与进化,9(5): 2996-3010. DOI:10.1002/ece3.4757。

菲利普斯,J.D。S.H.French、D.J.Gillis和R.H.Hanner(2020年)。HACSim:一个用于估计遗传多样性种内样本大小的R包使用单倍型累积曲线进行评估。PeerJ计算机科学.6(192): 1-37. DOI:10.7717/peerj-cs.243。

菲利普斯,J.D。Gillis,D.J.和Hanner,R.H.(2022年)。DNA条形码缺乏统计严谨性可能会使真正物种的条形码缺口失效。生态学与进化前沿,10: 859099. 内政部:10.3389/fevo.2022.859099。

更多信息

查看HACSim R Shiny网络应用程序!访问https://jphill01.shinyapps.io/HACSim网站对于稳定的web工具或https://github.com/jphill01/HACSim-RShiny应用程序用于R开发版本。或者,可以通过HACSim R包通过启动应用程序()功能。

如果你有问题,请给我发电子邮件!

关于

物种单倍型积累曲线的迭代外推用于遗传多样性评估。

话题

资源

许可证

星星

观察者

叉子

发布

未发布版本

包装

未发布包