2023 江苏省研究生数学建模 A 题思路

news2024/11/16 21:51:20

2023年江苏省研究生数学建模科研创新实践大赛A题新型抗癌药物研究模型探索靶向治疗是治疗肿瘤疾病的一种重要方法,它具有针对性强、疗效显著等特点。现有的靶向药物通常针对特定的基因突变靶点,容易出现耐药性。目前,一种由癌症诱发的血管新生作为靶点的靶向药物研究正成为该领域研究的热点。

文章目录

  • 一、题目重述
  • 二、问题一的分析
  • 二、问题二的分析
  • 三、问题三的分析

一、题目重述

原发和转移性肿瘤持续生长的先决条件是肿瘤本身能诱导新的血管生成。定点清除肿瘤新生血管是一种崭新的抗癌策略,该策略通过切断肿瘤赖以生长、转移的营养来源和迁移通道以达到抗癌效果。有证据表明,肿瘤生长、扩散转移与新血管生成密切相关:(a)在肿瘤直径小于2mm时,肿瘤生长缓慢,原发肿瘤仅局部浸润,尚未发生转移,称为“潜伏期”。只有当肿瘤继续生长大于2mm时,微血管逐渐形成,肿瘤实体随之逐渐增大,进而发生扩散和转移;(b)肿瘤实体内微血管数量与肿瘤转移潜能成正相关;(c)某些血管生成素与生长因子,如VEGF、EGF、FGF等通过促进血管生长增加了肿瘤转移的概率;(d)某些血管生成抑制剂能抑制肿瘤细胞生长与转移。基于以上事实,研究血管生成抑制剂以达到阻断肿瘤转移已成为抗肿瘤研究的关键。

目前,依据肿瘤血管发生机制设计的血管抑制剂较多,归纳起来主要有细胞外基质降解抑制剂、粘附分子抑制剂、活化的内皮细胞抑制剂、血管生成因子抑制剂和细胞内信号传导阻断剂等五类。

为了研究某类药物对血管新生的作用,研究人员进行了以下实验:对某种动物使用药物A 诱导其血管新生,加入药物B 作用后发现其具有逆转A 造成的血管新生作用(先加入药物 A,在其作用结束并清洗后,再加入药物B),而药物B 的结构类似物C 对试验动物有明显的血管新生抑制作用。在对四组样品(正常对照组、加药物A 组、加药物B 组和加药物 C)适当处理(包括充分的培养时间和药液清洗)后,进行RNA-seq 测序。本研究希望通过比对正常对照组(没有添加任何药物)、药物A 添加组、药物B 添加组和药物C 添加组的基因表示,研究药物A 诱导血管新生作用、药物B 血管新生逆转作用和药物C 对血管新生的抑制作用机理。

请解决以下问题:1. 针对附件数据,建立基因表达差异的显著性检验模型,并进行相关参数估计。因费用问题实际采集的样本很少,给出提高小样本显著性检验精度的方法;2. 在研究基因表达显著性差异时,一般假设基因表达是独立的。但事实上,生物学功能基因组的表达水平往往具有协同调节特点(inherently coregulated in their expression levels),请建立数学模型刻画基因表达的协同调节作用,并对模型的合理性进行评价;3. 请建立模型,寻找与血管新生直接关联的基因。现有的方法是对表达显著性差异的基因利用 FDR校正以克服检验误差,但这样得到的基因数目通常还有数千个,请结合问题2模型,利用生物学功能基因组协同调节的特点减少敏感基因数目,并针对附件中数据在论文中给出50个最敏感基因。

名称解释:

  1. 靶向药物:是指被赋予了靶向(Targeting)能力的药物或其制剂。其作用是使药物或其载体能瞄准特定的病变部位,并在目标部位蓄积或释放有效成分。

  2. EGF(表皮细胞生长因子):该因子可以在体内促进机体的表皮细胞、上皮细胞等生长分裂代谢,改善细胞生长微环境。

  3. FGF(成纤维细胞生长因子):该因子可以调节多种细胞的迁移、增殖、分化、存活、代谢活动和神经功能。

  4. VEGF(血管内皮生长因子):该因子可以促进血管形成,增加血管通透性 。

  5. 血管生成抑制剂:血管生成抑制剂是阻断血管生成的药物,其作用是阻止肿瘤获取养分和氧气。

  6. RNA-seq(RNA sequencing):转录组测序技术,常用于检测所有mRNA的表达量差异。该技术利用新一代高通量测序平台对基因组cDNA测序,通过统计相关Reads(用于测序的cDNA小片段)数计算出不同mRNA的表达量,分析转录本的结构和表达水平。

  7. FDR(false discovery rate):伪发现率,指错误拒绝的个数占所有被拒绝的原假设个数比例的期望值。

数据说明:

  1. 样本包括7组实验数据(genes001.xlsx):2个Cont对照组(Cont-1_count_fpkm 和Cont-2_count_fpkm,对未添加任何药物样本测序,并计算基因表达量FPKM);1个添加药物A组(A-1_count_fpkm,直接添加含药物 A 的培养液,经过足够长时间培养后对样本测序,并计算基因表达量FPKM);2个添加药物 B组(B-1_count_fpkm和B-2_count_fpkm,该实验是在添加含药物A培养液,经过适当时间,诱导血管新生后,洗去药液,再加入含药物B的培养液,经过足够长时间培养后对样本测序,并计算基因表达量FPKM);2个添加药物C组(C-1_count_fpkm和C-2_count_fpkm,直接添加含药物C的培养液,经过足够长时间培养后对样本测序,并计算基因表达量FPKM)。

  2. Id:基因的ID

  3. 基因表达量FPKM:Fragments Per Kilobase of transcript per Million mapped reads,其计算公式为

二、问题一的分析

针对附件数据,建立基因表达差异的显著性检验模型,并进行相关参数估计。因费用问题实际采集的样本很少,给出提高小样本显著性检验精度的方法。

对于基因表达差异的显著性检验,可以使用 t t t 检验或者 DESeq2 等差异表达分析工具,下面是一个基于 t t t 检验的简单模型,用于比较两个处理组之间的基因表达差异:

假设我们有两组样本,分别是组 A A A 和组 B B B。对于每个基因,我们有 A A A 组的基因表达值( x 1 x_1 x1, x 2 x_2 x2, …, x n x_n xn)和 B B B 组的基因表达值( y 1 y_1 y1, y 2 y_2 y2, …, y n y_n yn)。我们的零假设( H 0 H_0 H0)是:两组样本的基因表达均值相等,即 μ A = μ B μ_A = μ_B μA=μB。备择假设( H 1 H_1 H1)是:两组样本的基因表达均值不相等,即 μ A ≠ μ B μ_A ≠ μ_B μA=μB

t检验的统计量可以表示为:

t = ( m e a n ( x ) − m e a n ( y ) ) / s q r t ( ( v a r ( x ) / n ) + ( v a r ( y ) / n ) ) t = (mean(x) - mean(y)) / sqrt((var(x)/n) + (var(y)/n)) t=(mean(x)mean(y))/sqrt((var(x)/n)+(var(y)/n))

其中,mean(x) 和 mean(y) 分别是组 A 和组 B 的基因表达均值,var(x) 和 var(y) 分别是组 A 和组 B 的基因表达方差,n 是每个组的样本数量。

在小样本情况下,可以考虑使用更稳健的方法来增加显著性检验的精度。例如,可以使用基于重抽样的方法。

二、问题二的分析

数据量差距有点大,先预处理一下吧,归一化。

  1. 计算基因之间的相关性,可以使用相关系数(如皮尔逊相关系数)或其他距离度量
  2. 建立基因相关性矩阵
  3. 基于相关性矩阵,构建网络,节点表示基因,边表示基因之间的相关性
  4. 可以设定一个相关性阈值来确定是否存在一条边,即相关性大于阈值的基因被连接起来
  5. 在这个网络中,咱们可以找找看有没有什么搜索算法,来识别出具有高度相关性的基因模块
  6. 协同调节的基因集合

社区发现算法,论文里提的,图搜索

示例网络:

在这里插入图片描述
社区发现的目的也很简单,就是在图中找到一些“潜在的有特定关系的组织”,也就是社区

举一个示例,代码如下:

import matplotlib.pyplot as plt
import networkx as nx
from community import community_louvain

G = nx.karate_club_graph()

com = community_louvain.best_partition(G)

node_size = [G.degree(i)**1*20 for i in G.nodes()]


df_com = pd.DataFrame({'Group_id':com.values(),
                       'object_id':com.keys()}
                    )
df_com.groupby('Group_id').count().sort_values(by='object_id', ascending=False)

colors = ['DeepPink','orange','DarkCyan','#A0CBE2','#3CB371','b','orange','y','c','#838B8B','purple','olive','#A0CBE2','#4EEE94']*500
colors = [colors[i] for i in com.values()]



plt.figure(figsize=(4,3),dpi=500)
nx.draw_networkx(G,

                 pos = nx.spring_layout(G),
                 node_color = colors,
                 edge_color = '#2E8B57',
                 font_color = 'black',
                 node_size = node_size,
                 font_size = 5,
                 alpha = 0.9,
                 width = 0.1,
                 font_weight=0.9
                 )
plt.axis('off')  
plt.show()

在这里插入图片描述
这个数据集也很简单,就是有关联的对应起来:

在这里插入图片描述
咱们可以用这个简单的方法来处理,比如设置一个阈值,高于0.3的才称有关联,这样我们就筛选了部分有联系的基因出来,就可以绘制这样的图了。

参考文献:

https://www.jianshu.com/p/b05145d0020a

三、问题三的分析

FDR(False Discovery Rate)校正是一种用于多重比较校正的方法,用于控制在进行多个假设检验时出现的错误发现率。在基因表达分析中,当比较多个基因的表达差异时,FDR校正可以帮助识别那些在显著性检验中具有实际差异的基因,以减少错误发现。

对表达显著性差异的基因进行FDR校正:

第一步:执行显著性差异分析

使用适当的统计方法(例如,t检验、方差分析、Wilcoxon秩和检验等),比较不同条件下的基因表达值,识别出表达显著性差异的基因。这将产生每个基因的p值或其他统计量。

第二步:计算原始FDR值

将所有p值按从小到大的顺序进行排序。然后,计算每个p值对应的FDR值,使用以下公式(公式题目中已给,我就不打了)

第三步:FDR校正

对于设定的期望FDR水平(例如0.05),找到第一个FDR值小于等于该阈值的位置i。然后,所有p值排名在i之前的基因被认为是显著的

第四步:获取显著差异基因

选择根据FDR校正得出的显著差异基因。这些基因被认为在多重比较下仍然具有显著性差异

简单的思路:

  1. 使用问题2中描述的方法,建立基因表达的协同调节模型,构建共表达网络,识别基因模块。
  2. 使用已知与血管新生相关的生物学知识,例如文献报道、基因数据库等,来选择与血管新生相关的功能模块。这将帮助缩小关注范围。
  3. 在功能模块内,对在问题2中鉴定的基因进行进一步筛选,选择与血管新生功能密切相关的基因。这可以基于基因的生物学功能注释、通路分析等。
  4. 对在步骤4中筛选出的基因进行显著性差异分析,并进行FDR校正,以控制多重比较的错误。
  5. 基于以上步骤,选择最敏感的前50个基因作为与血管新生直接关联的基因。

补充:

与血管新生相关的基因筛选需要依赖于生物学领域的知识和文献研究。血管新生是一个复杂的生物学过程,涉及多种基因和信号通路的调控。以下是一些可能的筛选规则和方法,用于确定与血管新生相关的基因:

  1. 回顾已有的文献和数据库,如PubMed、GeneCards、KEGG等,寻找与血管新生过程相关的基因。文献中的研究可以提供关于基因在血管新生中的角色和表达的信息。
  2. 使用基因功能注释数据库,如Gene Ontology(GO)和Molecular Signatures Database(MSigDB),寻找与血管新生功能关联的基因。这些数据库提供了基因参与的功能、通路和生物过程信息。
  3. 使用共表达网络分析方法,如WGCNA,构建基因共表达网络,并从网络中识别与血管新生相关的基因模块。(这个好像R语言有)

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

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

相关文章

回归预测 | MATLAB实现CSO-ELM布谷鸟算法优化极限学习机多输入单输出回归预测(多指标,多图)

回归预测 | MATLAB实现CSO-ELM布谷鸟算法优化极限学习机多输入单输出回归预测(多指标,多图) 目录 回归预测 | MATLAB实现CSO-ELM布谷鸟算法优化极限学习机多输入单输出回归预测(多指标,多图)效果一览基本介…

Go 使用 Gorm 将操作信息集成到链路跟踪 Jaeger,进行增删改查使用举例,并做可视化UI界面展示(附源码)

Go 使用 Gorm 将操作信息集成到链路跟踪 Jaeger,进行增删改查使用举例(附源码)。 为了增强程序的可观测性,方便问题定位,在发起数据库操作请求时我们也可以调用代码统一集成链路跟踪的能力,Jaeger 是当今比较流行的选择。使用 Gorm 来将操作信息集成到 Jaeger 中。 全面…

Gazebo GPU加速【gzserver running in GPU】

文章目录 Gazebo GPU加速1. 问题2. 解决办法2.1 本机运行 2.2 headless3. 补充3.1 如何确定的Gazebo为OpenGL渲染3.2 显卡驱动--no-opengl-files3.3 nouveau Gazebo GPU加速 1. 问题 Gazebo仿真帧率极低,fps在10以下,同时显卡驱动已安装,但…

WebRTC之FEC前向纠错协议

FEC前向纠错用于丢包恢复,对媒体包进行异或或其他算法生成冗余包进行发送。如果接收端出现丢包,可以通过冗余包恢复出原始的媒体包。FEC的代价是增加码率带宽,所以一般会根据网络状况、丢包率来动态调整FEC冗余系数,也会结合NACK/…

mtk8175添加一款camera(GC5035)流程

说明: 在MTK平台添加一款新的Camera IC 需要如下三个步骤: device目录下面添加相关宏定义。 kernel目录下面添加dts配置,即硬件管脚、时钟、电源、I2C等的配置和 添加相关的驱动。 vendor 目录下面添加相关的效果文件。 下面是自己在MTK…

在Java8的forEach()中使用break/continue

今天在开发中,使用forEach()来遍历元素执行业务操作,发现如果判断不符合某个条件时就要continue,不能继续向后执行了。但是在forEach()中不能使用for循环中的continue和break,那改如何退出呢? 答案是:使用…

利用open_cv在图像上进行点标记,文字注记,画圆、多边形、椭圆

(1)CV2中的绘图函数: cv2.line() 绘制线条cv2.circle() 绘制圆cv2.rectangle() 绘制矩形cv2.ellipse() 绘制椭圆cv2.putText() 添加注记 (2)注释 img表示需要绘制的图像color表示线条的颜色,采用颜色矩阵…

Python基础学习第一天:关于Python的简单介绍

前言 最近一批批大一新生都要开始踏入校园了,计算机专业 emmm…如果有需要学习python的,尤其是还没开学的,确实可以开始找找资料看看python了,如果是自己本来就对python感兴趣,更应该需要看看了,毕竟学校到…

【五】sql 语言 -- 概览

SQL 语言概述SQL 语言提出和发展SQL 语言的功能概述利用 SQL 语言建立数据库学生选课数据库 SCT1. 定义数据库和表 SQL-DDL创建数据库的语句—Create Database创建关系/表的语句—Create Table 2. 向表中追加元组 SQL-DML 利用 SQL 语言进行简单查询单表查询 - SELECT-FROM-WHE…

工地安全帽识别闸机联动开关 yolov7

工地安全帽识别闸机联动开关系统通过yolov7系列网络模型深度学习算法,工地安全帽识别闸机联动开关算法对施工人员的人脸、安全帽和反光衣进行识别,判断是否符合安全要求。只有当人脸识别成功且安全帽、反光衣齐全时,闸机才会打开允许施工人员…

FFmpeg支持多线程编码并保存mp4文件示例

之前介绍的示例: (1).https://blog.csdn.net/fengbingchun/article/details/132129988 中对编码后数据保存成mp4 (2).https://blog.csdn.net/fengbingchun/article/details/132128885 中通过AVIOContext实现从内存读取数据 (3).https://blog.csdn.net/fengbingchun/…

基于XGBoots预测A股大盘《上证指数》(代码+数据+一键可运行)

对AI炒股感兴趣的小伙伴可加WX:caihaihua057200(备注:学校/公司名字方向) 另外我还有些AI的应用可以一起研究(我一直开源代码) 1、引言 在这期内容中,我们回到AI预测股票,转而探索…

知识图谱实战应用25-基于py2neo的超市商品的图谱构建与商品推荐系统的实现

大家好,我是微学AI,今天给大家介绍一下知识图谱实战应用25-基于py2neo的超市商品的图谱构建与商品推荐系统的实现,本篇文章,我将指导大家如何使用py2neo和Neo4j构建一个实用的超市商品知识图谱和推荐系统。该系统可以帮助用户快速找到感兴趣的商品,并提供个性化的推荐服务…

【mysql】MySQL服务无法启动 NET HELPMSG 3534

MySQL服务无法启动 NET HELPMSG 3534 错误描述寻找原因解决方法 错误描述 mysql版本:8.1.0 mysql安装成功之后,使用net start mysql来启动mysql,然后出现了报错 MySQL服务无法启动 NET HELPMSG 3534 寻找原因 1、在cmd中,进入…

【论文笔记】最近看的时空数据挖掘综述整理8.27

Deep Learning for Spatio-Temporal Data Mining: A Survey 被引用次数:392 [Submitted on 11 Jun 2019 (v1), last revised 24 Jun 2019 (this version, v2)] 主要内容: 该论文是一篇关于深度学习在时空数据挖掘中的应用的综述。论文首先介绍了时空数…

css background实现四角边框

2023.8.27今天我学习了如何使用css制作一个四角边框,效果如下: .style{background: linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) left top,linear-gradient(#33cdfa, #33cdfa) right top,linear-gradient(#33cdfa, #…

阿里云 Serverless 应用引擎 2.0,正式公测!

阿里云 Serverless 应用引擎 SAE2.0 正式公测上线!全面升级后的 SAE2.0 具备极简体验、标准开放、极致弹性三大优势,应用冷启动全面提效,秒级完成创建发布应用,应用成本下降 40% 以上。 此外,阿里云还带来容器服务 Se…

【Python】基于Python的电话簿(Phonebook project)设计(代码详解)

👉博__主👈:米码收割机 👉技__能👈:C/Python语言 👉公众号👈:测试开发自动化【获取源码商业合作】 👉荣__誉👈:阿里云博客专家博主、5…

【农业生产模拟】WOFOST模型与PCSE模型实践

实现作物产量的准确估算对于农田生态系统响应全球变化、可持续发展、科学粮食政策制定、粮食安全维护都至关重要。传统的经验模型、光能利用率模型等估产模型原理简单,数据容易获取,但是作物生长发育非常复杂,中间涉及众多生理生化过程&#…

Yandex SEO和Google SEO有啥区别?5000字说必须要了解的一些事儿

最近筋斗云SEO服务有做一些俄罗斯市场的SEO,而做俄罗斯的SEO相当于就是要做Yandex的SEO。对比Google的SEO优化,其实有比较多的区别,但总体算法、逻辑等等都大致相似。本文从Linus自己的研究和搜集的公开信息,对比一下Google和Yand…