当前位置: 首页 > news >正文

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的比例分离出显性和隐性性状。
    以下是对孟德尔第一定律的简要总结:

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

相关文章:

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

🎉 进入生物信息学的世界,与Rosalind一起探索吧!🧬 Rosalind是一个在线平台,专为学习和实践生物信息学而设计。该平台提供了一系列循序渐进的编程挑战,帮助用户从基础到高级掌握生物信息学知识。无论你是初…...

C++ 47 之 函数调用运算符重载

#include <iostream> #include <string> using namespace std;class MyPrint{ public:// 重载小括号() 重载谁operator后就紧跟谁的符号void operator()(string txt){cout << txt << endl;} };class MyAdd{ public:int operator()(int a, int b){retur…...

[Qt的学习日常]--常用控件1

前言 作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、什么是控…...

模型实战(23)之 yolov10 使用总结及训练自己的数据集

yolov10 使用总结及训练自己的数据集 0. yolov10 原理分析 此处参考:https://blog.csdn.net/CVHub/article/details/139204248论文:https://arxiv.org/pdf/2405.14458源码:https://github.com/THU-MIG/yolov10 论文原理分析: 创新: 双标签分配策略 众所周知,标签分配策略…...

AIRNet模型使用与代码分析(All-In-One Image Restoration Network)

AIRNet提出了一种较为简易的pipeline&#xff0c;以单一网络结构应对多种任务需求&#xff08;不同类型&#xff0c;不同程度&#xff09;。但在效果上看&#xff0c;ALL-In-One是不如One-By-One的&#xff0c;且本文方法的亮点是batch内选择patch进行对比学习。在与sota对比上…...

欧洲杯“球迷狂欢趴”开启,容声带来“健康养鲜”新理念

6月15日&#xff0c;容声冰箱在深圳举行了异彩纷呈的“欧洲杯养鲜补给站 球迷狂欢趴”系列活动。 容声国内营销总经理韩栋现场发布“以品质领先 为健康养鲜”的主题内容&#xff0c;强调容声将以健康养鲜技术产品的升级迭代&#xff0c;满足用户品质生活需求。 作为有着41年发…...

人工智能对零售业的影响

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

Spring Boot + EasyExcel + SqlServer 进行批量处理数据

前言 在日常开发和工作中&#xff0c;我们可能要根据用户上传的文件做一系列的处理&#xff0c;本篇文章就以Excel表格文件为例&#xff0c;模拟用户上传Excel文件&#xff0c;讲述后端如何高效的进行数据的处理。 一.引入 EasyExcel 依赖 <!-- https://mvnrepository.com/…...

深入理解指针(四)

目录 1. 回调函数是什么? ​2. qsort使用举例 2.1冒泡排序 2.2使用qsort函数排序整型数据 ​2.3 使用qsort排序结构数据(名字) 2.4 使用qsort排序结构数据(年龄) 3. qsort函数的模拟实现 1. 回调函数是什么? 回调函数就是⼀个通过函数指针调⽤的函数。 如果你把函数…...

k-means聚类模型的优缺点

一、k-means聚类模型的优点 1. 简单高效&#xff1a;k-means算法思想简单直观&#xff0c;易于实现。它通过迭代计算样本点与聚类中心之间的距离&#xff0c;并不断调整聚类中心的位置&#xff0c;直至满足终止条件。由于其计算过程相对直接&#xff0c;所以具有较高的执行效率…...

我的创作纪念日(1825天)

Ⅰ、机缘 1. 记得是大一、大二的时候就听学校的大牛说&#xff0c;可以通过写 CSDN 博客&#xff0c;来提升自己的代码和逻辑能力&#xff0c;虽然即将到了写作的第六个年头&#xff0c;但感觉这句话依旧受用; 2、今年一整年的创作都没有停止&#xff0c;本年度几乎是每周都来…...

Studio One 6.6.2 for Mac怎么激活,有Studio One 6激活码吗?

如果您是一名音乐制作人&#xff0c;您是否曾经为了寻找一个合适的音频工作站而苦恼过&#xff1f;Studio One 6 for Mac是一款非常适合您的MacBook的音频工作站。它可以帮助您轻松地录制、编辑、混音和发布您的音乐作品。 Studio One 6.6.2 for Mac具有直观的界面和强大的功能…...

Windows搭建nacos集群

Nacos是阿里巴巴的产品&#xff0c;现在是SpringCloud中的一个组件。相比Eureka功能更加丰富&#xff0c;在国内受欢迎程度较高。 下载地址&#xff1a;Tags alibaba/nacos GitHub 链接&#xff1a;百度网盘 请输入提取码 提取码&#xff1a;8888 解压文件夹 目录说明&am…...

kotlin 中的字符

一、字符类型 1、kotlin中&#xff0c;字符用Char类型表示&#xff0c;值使用单引号 括起来。 fun main() {val a: Char 1println(a) // 1println("a类型为&#xff1a;${a.javaClass.simpleName}") // a类型为&#xff1a;char } 2、特殊字符的表示。 \t——制…...

yocto根文件系统如何配置静态IP地址

在Yocto根文件系统中配置静态IP地址&#xff0c;你可以参考以下步骤。请注意&#xff0c;这些步骤可能会因Yocto版本和具体硬件平台的不同而略有差异。 1. 获取网络配置信息 首先&#xff0c;你需要从网络运维方获取分配的IP地址、子网掩码、默认网关和DNS信息。 2. 确定配置文…...

【博客720】时序数据库基石:LSM Tree的辅助优化

时序数据库基石&#xff1a;LSM Tree的辅助优化 场景&#xff1a; LSM Tree其实本质是一种思想&#xff0c;而具体是否需要WAL&#xff0c;内存表用什么有序数据结构来组织&#xff0c;磁盘上的SSTable用什么结构来存放&#xff0c;是否需要布隆过滤器来加快不存在数据的判断等…...

C++前期概念(重)

目录 命名空间 命名空间定义 1. 正常的命名空间定义 2. 命名空间可以嵌套 3.头文件中的合并 命名空间使用 命名空间的使用有三种方式&#xff1a; 1:加命名空间名称及作用域限定符&#xff08;::&#xff09; 2:用using将命名空间中某个成员引入 3:使用using namespa…...

Java字符串加密HMAC-SHA1密钥,转换成Base64编码

新建一个maven测试项目&#xff0c;直接把代码复制过去就行&#xff0c;把data和secretKey的值替换成想加密的值。 package test;import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; import java.security.InvalidKeyException; import java.security.NoSuchA…...

【网络架构】Nginx

目录 一、I/O模型 1.1 Linux 的 I/O 1.2 零拷贝技术 1.3 网络IO模型 1.3.1 阻塞型 I/O 模型&#xff08;blocking IO&#xff09;​编辑 1.3.2非阻塞型 I/O 模型 (nonblocking IO)​编辑 1.3.3 多路复用 I/O 型 ( I/O multiplexing )​编辑 1.3.4 信号驱动式 I/O 模型 …...

C# OpenCvSharp 逻辑运算-bitwise_and、bitwise_or、bitwise_not、bitwise_xor

bitwise_and 函数 🤝 作用或原理: 将两幅图像进行与运算,通过逻辑与运算可以单独提取图像中的某些感兴趣区域。如果有掩码参数,则只计算掩码覆盖的图像区域。 示例: 在实际应用中,可以用 bitwise_and 来提取图像中的某些部分。例如,我们可以从图像中提取出一个特定的颜…...

正点原子 RK3562 Android14 集成 GStreamer 1.24.13(CLI + V4L2 插件)完整移植方案

RK3562 Android 系统中集成 GStreamer CLI V4L2 插件的完整移植方案&#xff0c;重点难点在于&#xff1a;预编译产物整理、Android.bp 自动生成、vendor 路径安装、运行时环境变量注入&#xff0c;以及 Android 动态链接 namespace 限制的排查。 正点原子RK3562J开发板瑞芯微…...

基于MCP与Apify的ESG供应链风险智能评估工具实战指南

1. 项目概述&#xff1a;一个为AI工作流赋能的ESG供应链风险智能评估工具 如果你是一名ESG分析师、供应链合规官或者投资经理&#xff0c;那么你一定对“供应商ESG尽职调查”这件事又爱又恨。爱的是&#xff0c;它确实能帮你识别潜在的环境、社会和治理风险&#xff0c;避免“…...

Perplexity AI集成开发工具:MCP协议与零成本API实战指南

1. 项目概述&#xff1a;将Perplexity AI深度集成到你的开发工作流 如果你是一名开发者&#xff0c;或者经常需要处理信息检索、代码问题排查、技术方案调研这类工作&#xff0c;那么你肯定对“搜索”这件事又爱又恨。爱的是它能瞬间连接海量知识&#xff0c;恨的是在IDE和浏览…...

利用taotoken模型广场为ai应用快速进行模型选型与测试

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 利用Taotoken模型广场为AI应用快速进行模型选型与测试 在构建一个需要集成多种AI能力的应用时&#xff0c;开发者面临的首要挑战往…...

深度重构黑苹果系统架构:OpenCore实战解析与性能优化

深度重构黑苹果系统架构&#xff1a;OpenCore实战解析与性能优化 【免费下载链接】Hackintosh 国光的黑苹果安装教程&#xff1a;手把手教你配置 OpenCore 项目地址: https://gitcode.com/gh_mirrors/hac/Hackintosh 在传统PC硬件与macOS系统兼容性的技术探索中&#xf…...

在多模型AI客服场景下利用Taotoken实现成本与效果的平衡

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 在多模型AI客服场景下利用Taotoken实现成本与效果的平衡 应用场景类&#xff0c;设想一个在线客服系统需要集成对话AI的场景&#…...

为VS Code集成GPT-4V视觉能力:VisualChatGPTStudio实战指南

1. 项目概述&#xff1a;当ChatGPT“睁开双眼”如果你和我一样&#xff0c;是个重度依赖ChatGPT进行编程、文档撰写和头脑风暴的开发者&#xff0c;那你一定体验过它的强大与局限。它能写出漂亮的代码片段&#xff0c;解释复杂的概念&#xff0c;但当你指着屏幕上的一个错误说“…...

从临床试验到互联网AB测试:边缘结构模型(MSM)如何解决你的‘时变混杂’难题

从临床试验到互联网AB测试&#xff1a;边缘结构模型如何破解动态混杂困局 当我们在互联网产品中测试一个新功能对用户留存率的影响时&#xff0c;常常会遇到一个棘手的问题&#xff1a;用户的行为会随着时间不断变化。比如&#xff0c;早期接触新功能的用户可能因为新鲜感而产生…...

从pip._vendor.urllib3报错到apt-get失败:一次搞定Ubuntu网络DNS配置(附阿里云镜像加速)

从pip报错到apt-get失败&#xff1a;Ubuntu网络DNS配置全攻略 最近在Ubuntu 16.04上配置Python开发环境时&#xff0c;遇到了一个看似简单却令人头疼的问题——pip安装包时频繁报错pip._vendor.urllib3.connection.HTTPSConnection&#xff0c;紧接着发现连apt-get update也失败…...

信息学奥赛经典回溯:八皇后问题深度解析与OpenJudge实战

1. 八皇后问题&#xff1a;从棋盘游戏到算法经典 第一次接触八皇后问题时&#xff0c;我正在准备信息学奥赛的选拔考试。当时觉得这不过是个棋盘游戏&#xff0c;直到真正动手编码时&#xff0c;才发现其中蕴含的算法智慧远比想象中丰富。这个问题要求在一个8x8的国际象棋棋盘上…...