【基于R语言群体遗传学】-12-超显性与次显性

欢迎先看前面的博客,再继续进行后面的内容:

群体遗传学_tRNA做科研的博客-CSDN博客

当杂合子的适应度超出纯合子的范围时,二倍体能够展现出更多令人着迷的选择实例。这种形式的一种是杂合子优势,或称为“超显性”,其中杂合子的适应度甚至高于任何一种纯合子。超显性的经典例子是在疟疾高发地区,人类镰状细胞贫血的血红蛋白等位基因。在疟疾猖獗的地区,由于改变的红细胞增加了对疟疾的抵抗力,杂合子具有适应度优势。然而,纯合子患有贫血症,尽管有抗疟疾能力,但总体适应度成本较高。 这似乎导致了一个稳定的平衡,其中等位基因频率通过选择保持在一定水平。如果它的频率上升到足够高的水平,以至于产生更多的纯合子,适应度成本会导致更少的这些等位基因被传递下去。如果它的频率较低,就会产生杂合子,并且由于平均适应度优势,该等位基因的频率会增加。让我们看一下Allison(1956)的数据,该数据收集了坦桑尼亚600多名个体的血红蛋白S的血红蛋白基因型数据。 让我们在哈代-温伯格预测下验证观察到的和预期的比例。

# 定义观察到的各基因型数量
AA <- 400
AS <- 249
SS <- 5# 计算总个体数
n <- AA + AS + SS# 计算等位基因S的频率
p <- (SS + AS/2) / n# 根据哈迪-温伯格定律计算期望的各基因型数量
EAA <- n * (1-p)^2
EAS <- n * 2 * p * (1-p)
ESS <- n * p^2# 打印观察到的和期望的基因型频率
print(paste("Observed:", AA/n, AS/n, SS/n))
print(paste("Expected:", EAA/n, EAS/n, ESS/n))# 将观察到的和期望的基因型数量放入向量
geno <- c(AA, AS, SS)
expe <- c(EAA, EAS, ESS)# 计算哈迪-温伯格平衡的卡方统计量G
G <- 2 * sum(geno * log(geno/expe))# 打印卡方统计量G
print(paste("G:", G))# 计算G统计量的P值,判断是否符合哈迪-温伯格平衡
pvalue <- pchisq(G, df=1, lower.tail=FALSE)# 打印P值
print(paste("P-value:", pvalue))

与我们之前看到的血红蛋白S数据不同:【基于R语言群体遗传学】-6-表型计算等位基因频率、最大似然估计方法-CSDN博客

基于我们的似然比检验,这些值与哈代-温伯格预测相差很大。考虑到我们对杂合子潜在适应度优势的了解,预期维持这种等位基因频率的杂合子适应度优势的大小是多少? 我们可以通过设置等位基因的平均适应度相等来计算这个平衡点。让s代表频率为p的导致镰状细胞的等位基因,a代表常见的血红蛋白等位基因,有三种基因型适应度:wss、wsa、waa。s等位基因要么与自己配对,频率为p,适应度为wss,要么与a配对,频率为1−p,适应度为wsa。这给出了平均等位基因适应度为: 

同样可以得到a等位基因的适应度为:

继续推导:

得到杂合子适应性:

Allison(1956)估计在坦桑尼亚穆索马,wss的阈值为0.2。如果我们设waa的相对适应度为1,并假设观察到的等位基因频率处于平衡状态(p = 0.199),我们可以计算假设的杂合子适应度。

p
w_ss <- 0.2
w_aa <- 1
(w_sa <- (p*(w_ss+w_aa)-w_aa) / (2*p-1))

那么,如果疟疾能够被有效地根除,我们会期待发生什么呢?使用我们估计的杂合子抵抗疟疾所带来的适应度优势,即使在面对等位基因在纯合子中配对时带来的重大健康成本,让我们看看s等位基因的多个起始等位基因频率的影响。然后,让我们看看如果我们去除疾病带来的压力会发生什么。我们可以重新利用我们之前编写的FitFreq函数。

# 设置初始等位基因频率
init_p <- p# 定义适应度值
w_ss <- 0.2 # 纯合隐性基因型的适应度
w_aa <- 1   # 纯合显性基因型的适应度
w_sa     # 杂合基因型的适应度# 定义模拟的代数
gen <- 50# 创建适应度场景列表
w <- list(c(w_ss, w_sa))# 创建初始等位基因频率矩阵
p <- matrix(c(0.01, 0.1, 0.2, 0.5, 0.9))# 生成迭代序列
iter <- seq_along(p)# 循环模拟每一代的变化
for(i in 1:(gen-1)){# 更新等位基因频率矩阵p <- cbind(p, lapply(iter,function(i, y, n) {FitFreq(y[[1]], n[[i]])},y=w, n=p[,ncol(p)]))
}# 绘制图形,设置x轴和y轴的标签及范围
plot(x=NULL, xlab="Generations", ylab="Allele frequency",xlim=c(1,2*gen), ylim=c(0, 1))# 绘制第一种适应度情景下的等位基因频率变化曲线
for(i in 1:nrow(p)){lines(1:gen, p[i,], lwd=2, col="blue")
}# 创建第二种适应度情景
w <- list(c(w_ss, 1))# 重置等位基因频率矩阵为初始频率
p <- matrix(init_p)# 重新生成迭代序列
iter <- seq_along(p)# 再次循环模拟每一代的变化
for(i in 1:gen){# 更新等位基因频率矩阵p <- cbind(p, lapply(iter,function(i, y, n) {FitFreq(y[[1]], n[[i]])},y=w, n=p[,ncol(p)]))
}# 绘制第二种适应度情景下的等位基因频率变化曲线
for(i in 1:nrow(p)){lines(gen:(2*gen), p[i,], lwd=2, col="red")
}

从结果图中,我们可以看到,如果失去适应度优势(即如果疟疾在很大程度上被根除),并且杂合子的适应度与普通纯合子相等,s等位基因预计将在另外50代中从0.2下降到约十分之一(1/10)的平衡频率,即约0.02,患贫血症的SS纯合子的比率将从4%(1/25)下降到两个数量级,即0.04%(1/2500)。

杂合子优势的反面是次显性:杂合子的适应度低于任何一种纯合子。这种形式的常见例子是在染色体重排中,例如相互易位,其中两条非同源染色体交换片段。对于平衡易位的双杂合子个体,其一半的配子是不平衡的,受精后会导致来自部分非整倍体的有害基因剂量效应。一个有用的近似是,杂合子的适应度是纯合子的一半,以模拟动态。

次显性平衡可以使用与超显性情况相同的公式和逻辑来计算:

让我们计算我们的平衡等位基因频率:

w_ss <- 0.9
w_sa <- 0.5
(p_eq <- (1- w_sa)/(w_ss-2*w_sa + 1))

如果我们的平衡等位基因频率略高于50%,让我们看看从起始等位基因频率在0.1到0.9范围内,我们可以预期什么样的等位基因频率轨迹。

# 定义模拟的代数
gen <- 20# 创建适应度场景列表
w <- list(c(w_ss, w_sa))# 创建初始等位基因频率矩阵,频率从0.1到0.9,步长为0.1
p <- matrix(seq(0.1, 0.9, 0.1))# 生成迭代序列
iter <- seq_along(p)# 循环模拟每一代的变化
for(i in 1:(gen-1)){# 更新等位基因频率矩阵p <- cbind(p, lapply(iter,function(i, y, n) {FitFreq(y[[1]], n[[i]])},y=w, n=p[,ncol(p)]))
}# 绘制图形,设置x轴和y轴的标签及范围
plot(x=NULL, xlab="Generations", ylab="Allele frequency",xlim=c(1,gen), ylim=c(0, 1))# 绘制不同初始频率下的等位基因频率变化曲线
for(i in 1:nrow(p)){lines(1:gen, p[i,], lwd=2, col="blue")
}# 创建一个新的等位基因频率矩阵,初始频率为平衡频率 p_eq
p <- matrix(p_eq)# 再次循环模拟每一代的变化
for(i in 1:(gen-1)){# 更新等位基因频率矩阵p <- cbind(p, lapply(1,function(i, y, n) {FitFreq(y[[1]], n[[i]])},y=w, n=p[,ncol(p)]))
}# 绘制平衡频率下的等位基因频率变化曲线,使用虚线表示
lines(1:gen, p, lwd=2, lty="dashed", col="blue")

从这个结果中,我们可以看到,起始等位基因频率低于我们的平衡频率的很快就会趋向灭绝,而那些起始略高于平衡频率的则有望在不久之后增加到接近固定。与超显性不同,次显性平衡是不稳定的,等位基因频率倾向于远离它,而不是趋向它。因为稀有等位基因最常以杂合子的形式出现,次显性转化为稀有等位基因的不利,稀有等位基因倾向于丢失,即使较罕见的纯合子比另一种更适应。同样,超显性被认为是稀有等位基因的优势,因为稀有等位基因倾向于存在于杂合子中,导致稳定的多样性。这说明了受倍性和适应度差异约束的进化轨迹如何被困在适应性较低的局部适应度“高峰”上的一个例子。 在种群遗传学的早期,人们推测广泛的超显性可能解释了为什么物种中存在如此多的遗传变异。然而,这些假设在很大程度上已经不再受欢迎,现在大量的遗传变异被认为是在选择上是中性的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/41815.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【包邮送书】AIGC时代程序员的跃迁——编程高手的密码武器

欢迎关注博主 Mindtechnist 或加入【智能科技社区】一起学习和分享Linux、C、C、Python、Matlab&#xff0c;机器人运动控制、多机器人协作&#xff0c;智能优化算法&#xff0c;滤波估计、多传感器信息融合&#xff0c;机器学习&#xff0c;人工智能等相关领域的知识和技术。关…

无线麦克风哪个品牌音质最好,揭秘手机收音麦克风哪个牌子好!

随着全球直播和短视频行业的蓬勃发展&#xff0c;领夹麦克风因其便携性和出色的录音质量而备受青睐。用户在各种场合下追求清晰、真实的录音效果&#xff0c;领夹麦克风无疑是一个理想的选择。 然而&#xff0c;面对市场上琳琅满目的品牌和型号&#xff0c;想要挑选一款性能优…

C++和Python蚂蚁搬食和蚊虫趋光性和浮标机群行为算法神经网络

&#x1f3af;要点 &#x1f3af;机器人群行为配置和C行为实现&#xff1a;&#x1f58a;脚底机器人狭隘空间导航避让障碍物行为 | &#x1f58a;脚底机器人使用摄像头耦合共振&#xff0c;实现同步动作 | &#x1f58a;脚底机器群使用相机&#xff0c;计算彼此间“分子间势能…

WAIC2024 上海 | Gooxi 全面展示智算新成果,加速人工智能落地应用

浦江之畔&#xff0c;大咖云集&#xff1b;智能浪潮&#xff0c;奔涌不息。7月4日&#xff0c;被誉为人工智能界风向标的世界人工智能大会暨人工智能全球治理高级别会议在上海盛大召开&#xff0c;Gooxi此次携最新AI服务器以及解决方案参与&#xff0c;以算为擎赋能新质生产力&…

如何对待信息技术课上学生玩游戏现象

对待信息技术课上学生玩游戏的现象&#xff0c;需要采取一系列综合措施&#xff0c;既要防止学生分心&#xff0c;又要确保课堂的教学质量和学生的积极参与。以下是一些建议&#xff1a; 1. 明确课堂规则&#xff1a;在课程开始之初&#xff0c;明确告知学生课堂上不允许玩游戏…

【UE Lua】 快速入门(基础语法、与UE引擎的交互)

目录 0 引言1 基础语法1.1 变量和数据类型1.2 注释1.3 控制结构1.4 函数1.5 表&#xff08;Table&#xff09;1.6 元表&#xff08;Metatable&#xff09;1.7 字符串操作1.8 模块和包1.9 错误处理 2 数据结构 - 表2.1 表&#xff08;Table&#xff09;2.2 元表&#xff08;Meta…

「数据结构详解·十四」对顶堆

「数据结构详解一」树的初步「数据结构详解二」二叉树的初步「数据结构详解三」栈「数据结构详解四」队列「数据结构详解五」链表「数据结构详解六」哈希表「数据结构详解七」并查集的初步「数据结构详解八」带权并查集 & 扩展域并查集「数据结构详解九」图的初步「数据结构…

【计算机毕业设计】017基于微信小程序的学生公寓电费信息管理系统

&#x1f64a;作者简介&#xff1a;拥有多年开发工作经验&#xff0c;分享技术代码帮助学生学习&#xff0c;独立完成自己的项目或者毕业设计。 代码可以私聊博主获取。&#x1f339;赠送计算机毕业设计600个选题excel文件&#xff0c;帮助大学选题。赠送开题报告模板&#xff…

多线程网络实战之仿qq群聊的服务器和客户端

目录 一、前言 二、设计需求 1.服务器需求 2.客户端需求 三、服务端设计 1.项目准备 2.初始化网络库 3.SOCKET创建服务器套接字 4. bind 绑定套接字 5. listen监听套接字 6. accept接受客户端连接 7.建立套接字数组 8. 建立多线程与客户端通信 9. 处理线程函数&…

【3GPP核心网】【5G】精讲5G核心网系统架构主要特征

目录 前言 1. 5G核心网系统架构主要特征 1.1 5G核心网与4G核心网EPC区别 1.2 5G核心网系统架构主要特征 2. 5G网络逻辑架构 2.1 新型基础设施平台 2.2 逻辑架构 前言 首先需要理解核心网的角色定位&#xff0c;作为移动通信网络的核心部分&#xff0c;核心网起着承上启下的作用…

【收藏】欧盟CE、美国FDA法规及标准查询常用网站

01 CE法规&标准查询网站 医疗器械主管部门的网站 网址: https://www.camd-europe.eu/ 简介: CAMD的全称是Competent authorities for medical devices&#xff0c;翻译成中文叫做医疗器械监管机构&#xff0c;实际上它指的是欧盟成员国医疗器械监管机构的联盟&#xff…

程序人生【追光的日子】今天我们不谈技术,谈一谈:人工智能的意义到底是什么?来看看今天分享的故事...我想我们都愿意相信,也许AI真的会有温度,这一天不远了~!

有志者,事竟成,破釜沉舟,百二秦关终属楚;苦心人,天不负,卧薪尝胆,三千越甲可吞吴。 🎯作者主页: 追光者♂🔥 🌸个人简介: 💖[1] 计算机专业硕士研究生💖 🌿[2] 2023年城市之星领跑者TOP1(哈尔滨)🌿 🌟[3] 2022年度博客之星人工智能领域…

Java SpringBoot MongoPlus 使用MyBatisPlus的方式,优雅的操作MongoDB

Java SpringBoot MongoPlus 使用MyBatisPlus的方式&#xff0c;优雅的操作MongoDB 介绍特性安装新建SpringBoot工程引入依赖配置文件 使用新建实体类创建Service测试类进行测试新增方法查询方法 官方网站获取本项目案例代码 介绍 Mongo-Plus&#xff08;简称 MP&#xff09;是一…

网络服务器配置与管理

网络服务器配置与管理是一个涉及多个方面的领域&#xff0c;它涵盖了从物理硬件的设置到操作系统、网络服务和应用的配置&#xff0c;再到日常维护和安全策略的实施。以下是网络服务器配置与管理的一些核心概念和步骤&#xff1a; 硬件配置&#xff1a; 选择合适的服务器硬件&a…

基于docker上安装elasticSearch7.12.1

部署elasticsearch 首先&#xff0c;先创建网络 # 创建网络 docker network create es-net拉取elasticSearch的镜像 #拉取镜像 docker pull elasticsearch:7.12.1创建挂载点目录 # 创建挂载点目录 mkdir -p /usr/local/es/data /usr/local/es/config /usr/local/es/plugin…

【SD教程】进阶篇图片复现AnimateDiff动画插件基础教程(附模型插件)

当你成功安装了SD&#xff08;Stable Diffusion&#xff09;后&#xff0c;是否也产生过这样的疑惑&#xff1a;为何我创作的图片与他人的作品在风格和质量上存在差异&#xff1f; 看着别人创作的精致、引人入胜的图片&#xff0c;你是否也渴望缩小这种质感上的差距&#xff1…

游戏AI的创造思路-技术基础-决策树(1)

决策树&#xff0c;是每个游戏人必须要掌握的游戏AI构建技术&#xff0c;难度小&#xff0c;速度快&#xff0c;结果直观&#xff0c;本篇将对决策树进行小小解读~~~~ 目录 1. 定义 2. 发展历史 3. 决策树的算法公式和函数 3.1. 信息增益&#xff08;Information Gain&…

深度解析:STM32对接米家平台,打造WiFi智能插座(ESP8266、电流检测)

摘要: 智能插座作为智能家居的入门级设备&#xff0c;凭借其低成本、易部署等优势&#xff0c;受到了广大用户的青睐。本文将引领你从零开始&#xff0c;使用功能强大的STM32微控制器、广受欢迎的ESP8266 WiFi模块以及功能丰富的米家IoT平台&#xff0c;一步步打造出一款能够远…

代码随想录-Day50

1143. 最长公共子序列 给定两个字符串 text1 和 text2&#xff0c;返回这两个字符串的最长 公共子序列 的长度。如果不存在 公共子序列 &#xff0c;返回 0 。 一个字符串的 子序列 是指这样一个新的字符串&#xff1a;它是由原字符串在不改变字符的相对顺序的情况下删除某些…

Linux环境中安装JDK

1.下载安装包 可以通过访问oracle官网&#xff1a;Java Downloads | Oracle 中国 下载对应的安装包。 本文使用的是java8的安装包&#xff0c;包名为&#xff1a;jdk-8u401-linux-x64.tar.gz 2.上传安装包到Linux环境 3.进入/usr目录下&#xff0c;新建一个java的目录&#…