CLUES 推断位点的受选择时间

CLUES(Conditional Likelihood Under Evolutionary Scenarios)是一个用于推断单个位点在群体中选择轨迹(selection trajectory)的软件工具。

下载安装

git clone https://github.com/standard-aaron/clues.git

该软件无需复杂的安装过程,下载即可用,内含一些 python 脚本。

该软件是在 Relate 计算的基础上进行的。详见:Relate 使用方法

在使用 SampleBranchLengths.sh 推断位点的分支长度后,生成的 relate_resample.timeb 要用于 clues 的计算,具体看我上一篇推文即可。

inference.py 是主要的计算脚本,但该脚本的运行需要一些 python 环境。

1)要在 python3 的环境下;

2)需要依赖环境:numpy、numba 等环境,如果没有会报错,基于报错安装依赖的环境,推荐 conda 安装,手动安装要费不少劲。

3)绘图脚本需要 matplotlib 环境。

推断需要指定有效群体大小,群体大小可以是固定值,也可以是 Relate 计算的有效群体大小文件。

python inference.py --times example/example -N <DIPLOID_POPSIZE>

或 python inference.py --times example/example --coal example/example.coal

--popFreq 可以指定位点当今的频率,比如:

--popFreq 0.3

--timeBins 可以指定特定时间段以检测选择压力。可以参考示例文件中的格式。

python inference.py --times example/example --timeBins example/timeBins.txt

--tCutoff 可以指定共祖过程的终止时间,默认是 1000 世代前。

python inference.py --times example/example --tCutoff 2000

--dom 硬编码等位基因的显性系数,默认值为 0.5(对应加性模型)。

python inference.py --dom 0.8 # 设置显性系数为0.8

--burnin 和 --thin 通过调整 MCMC 样本的权重,优化选择压力估计。

--burnin:丢弃前 LEN_BURNIN 步的 MCMC 样本(用于去除初始不稳定状态)。--thin:每隔 LEN_THIN 步抽取一个样本(减少样本间相关性)。

python inference.py --times example/example --burnin <预烧步数> --thin <稀疏步长>

--ancientSamps 整合古代 DNA(aDNA)的基因型似然值到分析中。

python inference.py --times example/example --ancientSamps example/exampleAncientSamps.txt

上述为可选参数,最终会生成 out.epochs.npy, out.freqs.npy, out.post.npy 三个文件,而后可以用 plot_traj.py 绘图。

python plot_traj.py <out_from_clues> <fig_name>

默认输出 pdf 文件,--ext 选项可以修改输出文件的格式,包括 eps、png 等。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容