欢迎光临散文网 会员登陆 & 注册

【ROSALIND】【练Python,学生信】64 计算致病基因携带者比例

2022-05-14 21:21 作者:未琢  | 我要投稿

如果第一次阅读本系列文档请先移步阅读【ROSALIND】【练Python,学生信】00 写在前面  谢谢配合~

题目:

计算致病基因携带者比例(Counting Disease Carriers)

 

Given: An array A for which A[k] represents the proportion of homozygous recessive individuals for the k-th Mendelian factor in a diploid population. Assume that the population is in genetic equilibrium for all factors.

所给:一个数组A,其中A[k]代表二倍体群体中第k个孟德尔因子纯合隐性个体的比例。我们假设种群所有因子都处于遗传平衡。

Return: An array B having the same length as A in which B[k] represents the probability that a randomly selected individual carries at least one copy of the recessive allele for the k-th factor.

需得:一个与A长度相同的数组B,其中B[k]表示随机个体第k个因子携带至少一个隐性等位基因的概率。

 

测试数据

0.1 0.25 0.5

测试输出

0.532 0.75 0.914

 

生物学背景

        尽管孟德尔的遗传定律很适合研究个体生物体及其后代,但它们难以用于分析等位基因是如何随时间在群体中变化的。我们需要一个理论告诉我们:什么时候可以假设一个群体中的等位基因比率(即等位基因频率)稳定的?

        在孟德尔的理论被再发现后不久的20世纪初,G·H·哈代和威廉·温伯格思考并得出结论,当满足五个条件时,个体群体中的等位基因百分比处于遗传平衡状态。条件如下:

        1.  种群足够大,使随机突变可以忽略不计;

        2.  被研究的基因不出现新的突变;

        3.  被研究的基因不影响生存和繁殖,因此不受自然选择影响;

        4.  由迁徙导致的基因频率变化可以忽略不计;

        5.  个体随机交配。

        哈代-温伯格原理(Hardy-Weinberg Law)指出,如果一个群体中某个等位基因处于遗传平衡状态,那么它的频率将保持不变,并在整个群体中均匀分布。哈代-温伯格原理一般能提供足够合理的群体遗传学模型,除非要研究的基因对生存或繁殖很重要。该简化模型的好处之一是帮助我们预测遗传疾病的遗传概率,从而采取适当的预防措施。

        遗传病通常是由染色体突变引起的,这些突变会遗传给后代。最简单也是最常见的遗传病是单基因疾病,由单一突变基因引起。目前在人类中已经发现了4000多种此类疾病,如囊性纤维化和镰状细胞贫血。在这类疾病中,个体必须同时拥有一个基因的两个隐性等位基因才会发生疾病。因此,携带者可以自己不知情,而将疾病遗传给子女。

        通过上述介绍我们可以提出一个基本但非常实际的问题:如果我们知道有多少人患有隐性基因编码的疾病,我们能预测人群中携带者的数量吗?

        因此,我们假设有一个由N个二倍体个体组成的种群。如果一个等位基因处于遗传平衡,假设有m个显性等位基因,那么所选染色体显示显性等位基因的概率就是p=m/2N。又因为遗传平衡的第一个假设是种群非常大,所以我们可以假设N是无限的,因此我们只需要关心m的值。

  

思路

        该题要求得到携带至少一个隐性等位基因的概率,我们可以直接计算不携带隐性基因(即显性纯合)的个体比例,再用1减去即可。

        由于给的条件是隐性纯合个体的比例,且处于遗传平衡状态,因此对隐性纯合个体的比例开平方,即得到隐性基因的频率;用1减去隐性基因频率即为显性基因频率,再平方就算出了显性纯合个体的比例。

 

代码


【ROSALIND】【练Python,学生信】64 计算致病基因携带者比例的评论 (共 条)

分享到微博请遵守国家法律