我有一些数据集,其中包含一些人群的i
个不同等位基因/ SNP的频率。另外,我记录了一些因素,这些因素由于过去的选择效应而改变了种群中这些等位基因的频率。假定可以以每个选择因子的简单线性回归形式描述选择影响。
现在,我想估计等位基因频率在相同的选择力作用下的期望值(因此,我设置了selection=1
)。这些新的等位基因频率a'_i
导出为
a'_i = a_i - function[a_i|selection=1]
以人口中等位基因a_i
的当前频率i
和function[a_i|selection=1]
作为在没有选择力的情况下的估计等位基因频率。
但是,整个过程存在一些限制:
a'_i
的最小值为0。a'_i
的总和必须为1。通常,我将通过应用多个线性回归来解决此问题。但是随后的约束没有得到满足...
有什么想法如何使用约束条件进行此分析(也许使用线性方程/回归系统或结构方程建模)?
Here是一个示例数据集,其中包含ABO主要等位基因组(p,q,r)的等位基因频率以及选择变量(x,y,z)。
尽管此示例文件仅包含3个等位基因和3个影响变量,但我的所有数据集均包含多达1050个等位基因/ SNP,并且始终有8个选择变量可能会对(但不必)对等位基因频率产生影响...
在此先感谢您的想法,代码段和提示!