Bio-Info每日一题:Rosalind-07-Mendel‘s First Law(孟德尔第一定律 python实现)

🎉 进入生物信息学的世界,与Rosalind一起探索吧!🧬
Rosalind是一个在线平台,专为学习和实践生物信息学而设计。该平台提供了一系列循序渐进的编程挑战,帮助用户从基础到高级掌握生物信息学知识。无论你是初学者还是专业人士,Rosalind都能为你提供适合的学习资源和实践机会。网址:https://rosalind.info
你是否想像专业人士一样分析DNA序列?这里有一个简单的任务来帮助你入门。
📝 任务说明:
请添加图片描述

这个题目是要你计算在一群具有不同基因型的个体中,两两随机交配后,后代中表现显性性状的概率。题目给出了三种基因型的个体数量:

  • k: 纯合显性个体的数量(homozygous dominant, AA)
  • m: 杂合个体的数量(heterozygous, Aa)
  • n: 纯合隐性个体的数量(homozygous recessive, aa)
    需要计算两两随机选取个体交配后,后代表现显性性状(具有显性等位基因)的概率。

解答

可能的配对及其概率

  • AA×AA:总是产生 AA(100% 显性)

  • AA×Aa(或 Aa×AA):产生 50% AA 和 50% Aa(100% 显性)

  • AA×aa(或 aa×AA):总是产生 Aa(100% 显性)

  • Aa×Aa:产生 25% AA、50% Aa 和 25% aa(75% 显性)

  • Aa×aa(或 aa×Aa):产生 50% Aa 和 50% aa(50% 显性)

  • aa×aa:总是产生 aa(0% 显性)
    每种配对的概率计算
    请添加图片描述

  • 计算最终的概率:

    • 最终的概率是上述每种配对概率与其产生显性表型概率的乘积之和。
def dominant_phenotype_probability(k, m, n):# 总个体数total = k + m + n# 各种配对产生显性表型的概率prob_AA_AA = (k / total) * ((k - 1) / (total - 1))prob_AA_Aa = 2 * (k / total) * (m / (total - 1))prob_AA_aa = 2 * (k / total) * (n / (total - 1))prob_Aa_Aa = (m / total) * ((m - 1) / (total - 1))prob_Aa_aa = 2 * (m / total) * (n / (total - 1))prob_aa_aa = (n / total) * ((n - 1) / (total - 1))# 显性表型的总概率probability = (prob_AA_AA * 1 +prob_AA_Aa * 1 +prob_AA_aa * 1 +prob_Aa_Aa * 0.75 +prob_Aa_aa * 0.5 +prob_aa_aa * 0)return probabilitydef main():# 从输入读取数据k = int(input("请输入显性纯合体(AA)的个体数: "))m = int(input("请输入杂合体(Aa)的个体数: "))n = int(input("请输入隐性纯合体(aa)的个体数: "))# 计算并打印概率result = dominant_phenotype_probability(k, m, n)print(f"产生显性表型后代的概率: {result:.5f}")if __name__ == "__main__":main()

补充

孟德尔第一定律,也称为分离律(Law of Segregation),是孟德尔在研究豌豆遗传实验时发现的基本遗传定律之一。该定律描述了在生殖细胞形成过程中,等位基因如何分离并在后代中重新组合的现象。具体内容如下:

  1. 等位基因分离:每个个体有一对等位基因控制某一特定性状(例如豌豆的颜色),这些等位基因在生殖细胞(配子)形成时会分离。每个配子只会携带其中一个等位基因。

  2. 随机组合:受精时,来自父本和母本的配子随机结合,从而形成新的基因型。这意味着后代的基因型是随机组合的,具有不同的等位基因组合。
    孟德尔通过研究豌豆的性状,如花的颜色和种子的形状,发现了这种分离现象。具体来说,他注意到当他交配纯合显性个体和纯合隐性个体时,第一代子代(F1代)全部表现出显性性状,而第二代子代(F2代)则按3:1的比例分离出显性和隐性性状。
    以下是对孟德尔第一定律的简要总结:

  • 每个性状由一对等位基因控制。
  • 在形成配子时,等位基因分离,每个配子只包含一个等位基因。
  • 受精时,来自父母双方的等位基因随机结合,决定后代的基因型和表现型。

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

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

相关文章

53. QT插件开发--插件(动态库so)的调用与加载

1. 说明 在使用QT进行插件库的开发之后,还需要将这个插件库程序生成的so动态链接库加载到主程序框架中进行使用,才能达到主程序的模块化开发的效果。在前一篇文章插件创建中介绍了如何在QT中开发插件库,并提供外部接口调用。本篇博客的主要作用是模拟在主程序框架中加载动态…

深度学习Day-20:DenseNet算法实战 乳腺癌识别

🍨 本文为:[🔗365天深度学习训练营] 中的学习记录博客 🍖 原作者:[K同学啊 | 接辅导、项目定制] 一、 基础配置 语言环境:Python3.8编译器选择:Pycharm深度学习环境: torch1.12.1c…

在表格中渲染轮播图的方法;

效果图:代码: shop()function shop() {// render()$.ajax({url: "http://jingxun.zhbbll.asia/pc/Commodity/shop_list", //要请求的后端地址type: "GET", //数据发送的方式(POST或者GET)dataType: JSON,headers: {token: token,id…

双Token方案实现Token自动续期(基于springboot+vue前后端分离项目)

文章目录 前言一、双Token方案介绍1. 令牌类型与功能2.双Token方案的优点3.实现流程 二、具体实现1.后端实现1.1 jwt工具类1.2 响应工具类1.3 实体类1.4 过滤器1.5 controller1.6 启动类 2、前端实现2.1 登录页面2.2 index页面2.3 请求拦截器和响应拦截器 效果展示 前言 更多j…

【星座运势】本周财运分析,巨蟹座财富潜力大开!

大家好!今天我们来谈谈巨蟹座本周的财富运势。经过调查和数据分析,我发现巨蟹座这周的财运潜力很大!接下来,我将用通俗易懂的语言,通过代码说明,向大家展示巨蟹座的财富运势。 首先,我们需要通…

人工智能对零售业的影响

机器人、人工智能相关领域 news/events (专栏目录) 本文目录 一、人工智能如何改变零售格局二、利用人工智能实现购物体验自动化三、利用人工智能改善库存管理四、通过人工智能解决方案增强客户服务五、利用人工智能分析消费者行为六、利用 AI 打造个性化…

【javaEE-有关CPU进程和线程实现的并发编程及二者的区别】

🔥🔥🔥有关进程并发编程开发的成本问题 这次之前其实我们所有的写的程序都是使用单核心来运行的,但是一般我们的计算机都有很多核心,如果我们编程的时候,只使用一个核心的话,其实这是一个非常大…

使用源代码编译方式升级内核【笔记】

为什么要升级内核 升级内核有多个重要的原因,主要包括以下几点: 安全性:随着技术的发展,旧版本的内核可能会存在安全漏洞。黑客或恶意用户可能会利用这些漏洞进行攻击。升级内核可以修复这些已知的安全漏洞,从而提高系统的安全性。性能优化:新版本的内核通常会包含对性能…

打造成功的人力RPO项目:赢得市场赚取利润

人力资源外包(RPO)项目是当今企业在招聘和人才管理方面越来越倾向的选择。想要通过人力RPO项目赚钱,以下是一些关键的策略和步骤,帮助您进入这个市场并取得成功。 1. 建立专业的人力RPO服务 首先,要想在人力RPO项目中赚钱,必须建立…

9. 文本三剑客之awk

文章目录 9.1 什么是awk9.2 awk命令格式9.3 awk执行流程9.4 行与列9.4.1 取行9.4.2 取列 9.1 什么是awk 虽然sed编辑器是非常方便自动修改文本文件的工具,但其也有自身的限制。通常你需要一个用来处理文件中的数据的更高级工具,它能提供一个类编程环境来…

【CT】LeetCode手撕—20. 有效的括号

题目 原题连接&#xff1a;20. 有效的括号 1- 思路 模式识别 模式1&#xff1a;括号左右匹配 ——> 借助栈来实现 ——> Deque<Character> deque new LinkedList<>()模式2&#xff1a;顺序匹配 ——> 用 if 判断 具体思路 1.遇到左括号 直接入栈相应…

FPGA IO_BANK、IO_STANDARD

描述 Xilinx 7系列FPGA和UltraScale体系结构提供了高性能&#xff08;HP&#xff09;和 高范围&#xff08;HR&#xff09;I/O组。I/O库是I/O块&#xff08;IOB&#xff09;的集合&#xff0c;具有可配置的 SelectIO驱动程序和接收器&#xff0c;支持多种标准接口 单端和差分。…

JS中的延时操作setTimeout()和setInterval()

JS中&#xff0c;给我们提供两种延时操作的内置方法setTimeout()和setInterval()。setTimeout和setInterval方法都是挂载在javascript的window对象下&#xff0c;通过两个参数控制&#xff0c;第一个参数控制运行的表达式或方法&#xff0c;第二个参数表示延时的时间&#xff0…

【电路笔记】-共基极放大器

共基极放大器 文章目录 共基极放大器1、概述2、等效电路3、电流增益4、输入阻抗5、输出阻抗6、电压增益7、示例:电压、电流和功率增益8、总结1、概述 在本文中,我们将介绍双极晶体管放大器的最后一种拓扑,称为共基极放大器 (CBA)。 下面的图 1 显示了 CBA 的电气图,此处没…

vite-plugin-pwa 离线安装Vite应用

渐进式Web应用&#xff08;PWA&#xff09;通过结合 Web 和移动应用的特点&#xff0c;为用户带来更加流畅和快速的体验。且PWA支持离线访问能力&#xff08;访问静态资源本地缓存&#xff09;&#xff0c;极大提高了用户交互的流畅性&#xff0c;降低非必要的网络依赖。尤其适…

卡尔曼滤波源码注释和调用示例

卡尔曼滤波源码注释和调用示例 flyfish Python版本代码地址 C版代码地址 主要用于分析代码&#xff0c;增加了中文注释 import numpy as np import scipy.linalg""" 0.95分位数的卡方分布表&#xff0c;N自由度&#xff08;包含N1到9的值&#xff09;。 取自…

【JS重点15】原型对象概述

目录 一&#xff1a;构造函数缺陷 二&#xff1a;原型 1 原型是是什么 2 原型对象的作用 3 原型对象this指向问题 4 利用原型对象添加方法 给JS内置构造函数Array添加最大值方法 给JS内置构造函数Array添加求和方法 三&#xff1a;Constructor属性 四&#xff1a;如何…

情绪管理:大我则定,小我则乱(王阳明)

学了很多知识&#xff0c;却还是感物易动&#xff1f;如何让心回归中正&#xff1f;王阳明一言以蔽之&#xff1a; —— 大我&#xff0c;大我则定&#xff0c;小我则乱 保持心静的方法&#xff1a;有大爱&#xff0c;为大局着想

全球“抱团”美股,美股“抱团”AI

内容提要 过去一个月内&#xff0c;全球约有300亿美元新资金流入股票基金&#xff0c;其中高达94%投向了美国资产&#xff1b;一季度&#xff0c;海外投资者购入了1870亿美元美国公司债券&#xff0c;同比增长61%。 文章正文 尽管美国面临债务问题和大选带来的政治分歧&#…

单链表——AcWing.826单链表

单链表 定义 单链表是一种常见的数据结构&#xff0c;它由一系列节点组成&#xff0c;每个节点包含一个数据元素和一个指向下一个节点的指针。 运用情况 用于实现动态的数据存储和管理&#xff0c;例如实现栈、队列等其他数据结构。在需要频繁进行插入和删除操作时非常有用…