【2023年研究生数学建模】E题代码与技术文档

2023年数学建模国赛C题

  • 问题1.1
    • Q1_1_judge.m
    • Q1_1_time.m
  • 问题1.2
    • Q1_2_1.m
    • Q1_2_BP.m
  • 技术文档
  • 写在最后

目前已经完成E题的第一、二问的代码和文档,分享一部分给大家,欢迎一起来交流谈论哦。

问题1.1

Q1_1_judge.m

clc
clear
data=xlsread('a表.xlsx');
for p=1:size(data,1)fv=data(p,3); %首次体积 for sf=1:8if isnan(data(p,3*(sf+1))) %判断是否为空break endnew_fv=data(p,3*(sf+1));if new_fv-fv>=6||(new_fv-fv)/fv>=0.33if data(p,3*(sf+1)-1)<=48table(p,1)=1;table(p,2)=data(p,3*(sf+1)-1);endendend
end
% for i=1:size(table,1)
%    for j=1:2
%       if ~table(i,j)
%          table(i,j)=NaN; 
%       end
%    end

Q1_1_time.m

clc
clear
data=xlsread('1.1时间计算.xlsx');
for p=1:size(data,1) %遍历每一个人y=data(p,3);m=data(p,4);d=data(p,5);h=data(p,6);min=data(p,7);s=data(p,8);%下面四舍五入小时if s>30if min<59min=min+1; else %min为59min=0;h=h+1; %进一位endendif min>30h=h+1; %不用管是否超过24endmax_sf=data(p,1)-1;if max_sf>8max_sf=8; endfor sf=1:max_sf %遍历每一个随访y_sf=data(p,sf*6+3);m_sf=data(p,sf*6+4);d_sf=data(p,sf*6+5);h_sf=data(p,sf*6+6);min_sf=data(p,sf*6+7);s_sf=data(p,sf*6+8);%下面四舍五入小时if s_sf>30if min_sf<59min_sf=min_sf+1;else %min为59min_sf=0;h_sf=h_sf+1; %进一位endendif min>30h_sf=h_sf+1; %不用管是否超过24endtemp_table=[y m d h;y_sf m_sf d_sf h_sf];if temp_table(1,1)~=temp_table(2,1) %以防万一有隔年的error('停!') endif temp_table(1,2)==temp_table(2,2) %如果月份相同if temp_table(1,3)==temp_table(2,3) %如果月相同日相同gap=temp_table(2,4)-temp_table(1,4); %直接相减else %如果月相同,日不同new_h=temp_table(2,4)+(temp_table(2,3)-temp_table(1,3))*24;gap=new_h-temp_table(1,4);endelse %如果月份不同gap_m=[temp_table(1,2):1:temp_table(2,2)-1]; %获取间隔的月份t_day=get_mday(gap_m(1)); %获取第一个月的天数gap_day_1=t_day-temp_table(1,3); %计算第一个月的天数差额if size(gap_m,2)>=2 %如果中间还有间隔for mm=2:size(gap_m,2)t_day=get_mday(gap_m(mm)); %获取第mm个月的天数gap_day_1=gap_day_1+t_day;endendgap_day=gap_day_1+temp_table(2,3); %总日期间隔new_h=temp_table(2,4)+gap_day*24;gap=new_h-temp_table(1,4);endtable(p,sf)=gap;end
end
for p=1:size(table,1)for j=1:size(table,2)if table(p,j)~=0table(p,j)=table(p,j)+data(p,2);elsetable(p,j)=NaN;endend
end%% 获取每个月的日期数
function t_day=get_mday(m)
m31=[1 3 5 7 8 10 12];
if ismember(m,m31)t_day=31;
elseif m==2t_day=28;
elset_day=30;
end
end

问题1.2

Q1_2_1.m

clc
clear
data1=xlsread('表2-患者影像信息血肿及水肿的体积及位置.xlsx');
data2=xlsread('表3-患者影像信息血肿及水肿的形状及灰度分布.xlsx','Hemo');
table=[];
for i=1:size(data1,1)for ii=1:size(data2,1)if data2(ii,1)==data1(i,1)table=[table;data2(ii,:)];breakendif ii==size(data2,1)table=[table;zeros(1,size(table,2))];endend
end

Q1_2_BP.m

clc
clear
data1=xlsread('因子得分预测表.xlsx');
train1=data1(1:100,:);
test1=data1(1:end,1:30);net=feedforwardnet([10 10 10]);%建立一个隐含层数为1,节点数为10的网络%定义在训练集过程中不使用测试集,只保留训练集与验证集(用于验证泛化能力)
net.divideParam.trainRatio = 80/100;
net.divideParam.valRatio = 20/100;
net.divideParam.testRatio = 0/100;%训练网络。
net=train(net,(train1(:,1:(end-1)))',(train1(:,end))');%注意,这里每一列为一个实例,所以需要转置
%测试效果
test_out=sim(net,(test1)');%测试
test_out=test_out';
for i=1:size(test_out,1)if test_out(i,1)<0test_out(i,1)=0; endif test_out(i,1)>1test_out(i,1)=1; end
end
% test_error=test_out-test1(:,end);
% test_mse = mse(test_error);
% fprintf('%d',test_mse)%% 读出Excel
%观察值(实际值):test1的最后一列
%预测值:test_out。

技术文档

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

写在最后

下面是国一同学整理的完整代码与运行结果,需要的同学欢迎咨询~
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

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

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

相关文章

七天学会C语言-第六天(指针)

1.指针变量与普通变量 指针变量与普通变量是C语言中的两种不同类型的变量&#xff0c;它们有一些重要的区别和联系。 普通变量是一种存储数据的容器&#xff0c;可以直接存储和访问数据的值。&#xff1a; int num 10; // 定义一个整数型普通变量num&#xff0c;赋值为10在例…

HTTP 协商缓存 ETag、If-None-Match

&#xff08;1&#xff09;浏览器第一次跟服务器请求一个资源&#xff0c;服务器在返回这个资源的同时&#xff0c;在respone header加上ETag。 ETag是服务器根据当前请求的资源生成的一个唯一标识。 这个唯一标识是一个字符串&#xff0c;只要资源有变化这个串就不同&#xff…

一文带你实现从PDF到Word文件的相互转换

一文带你实现从PDF到Word文件的相互转换 01. 前期准备 模块安装 pip install pdf2docx or使用国内镜像源进行安装&#xff08;清华的镜像源&#xff09; pip install pdf2docx -i https://pypi.tuna.tsinghua.edu.cn/simple 02. 模块介绍 pdf2docx是一个Python模块&#xff0…

荣湃隔离放大器Pai8300 5.0kVRMS完美代替TI AMC1301

深力科推出了用于电流检测的隔离放大器Pai8300&#xff0c;实现对电流快速、精确的检测。Pai8300采用全新架构&#xff0c;叠加荣湃专利智能分压技术&#xff0c;保证低功耗&#xff0c;高精度和良好的隔离性能&#xff0c;广泛应用于电机驱动&#xff0c;逆变器&#xff0c;变…

Intel酷睿和AMD锐龙

Intel酷睿系列&#xff0c;主要分i3、i5、i7、i9 如&#xff1a;Intel 酷睿i5 10210U i5&#xff1a;品牌修饰符。 10&#xff1a;代次指示符。 210&#xff1a;sku编号。 常见后缀&#xff1a; G1-G7&#xff1a;集显等级。 U&#xff1a;低功耗。 H&#xff1a;标压版…

AI创作工具-AI创作工具技术解读

创作是广告、文章、小说、社交媒体内容等各个领域的关键&#xff0c;但它通常需要创作者花费大量时间和精力&#xff0c;思考、编写和编辑内容。有时候&#xff0c;创作者可能面临写作灵感枯竭、时间紧迫或需要大量内容的情况。 添加图片注释&#xff0c;不超过 140 字&#xf…

2023华为杯数学建模研赛E题全解析

2023华为杯数学建模研赛E题解析&#xff0c;完整版已出!!! 包含所有模型、代码、结果&#xff0c;39页技术文档&#xff0c;详细内容如下! 免费版链接已放在下面&#xff0c;需要的同学可以直接自取~ 【云顶数模】2023研究生数学建模免费链接&#xff1a; https://pan.baid…

Java反序列化和php反序列化的区别

文章目录 PHP反序列化漏洞反序列化漏洞什么是反序列化漏洞&#xff1f;修改序列化后的数据&#xff0c;目的是什么&#xff1f; Java反序列化漏洞反序列化漏洞 PHP反序列化漏洞 序列化存在的意义是为了传输数据/对象&#xff0c;类是无法直接进行传输的。通过序列化后转换为字…

数据结构-----栈(栈的初始化、建立、入栈、出栈、遍历、清空等操作)

目录 前言 栈 1.定义 2.栈的特点 3.栈的储存方式 3.1数组栈 3.2链栈 4.栈的基本操作&#xff08;C语言&#xff09; 4.1初始化 4.2判断是否满栈 4.3判断空栈 4.4 入栈 4.5 出栈 4.6获取栈顶元素 4.7遍历栈 4.8清空栈 完整代码示例 前言 大家好呀&#xff01;今天我…

python使用websocket实现多端数据同步,多个websocket同步消息,断开链接自动清理

我使用的是flask_sock这个模块&#xff0c;我的使用场景是&#xff1a;可以让数据多端实时同步。在游戏控制后台和游戏选手的ipad上都可以实时调整角色的技能和点数什么的&#xff0c;所以需要这样的一个功能来实现数据实时同步。 下面是最小的demo案例&#xff1a; from fla…

【小沐学NLP】关联规则分析Apriori算法(Mlxtend库,Python)

文章目录 1、简介2、Mlxtend库2.1 安装2.2 功能2.2.1 User Guide2.2.2 User Guide - data2.2.3 User Guide - frequent_patterns 2.3 入门示例 3、Apriori算法3.1 基本概念3.2 apriori3.2.1 示例 1 -- 生成频繁项集3.2.2 示例 2 -- 选择和筛选结果3.2.3 示例 3 -- 使用稀疏表示…

UE4 C++ 使用第三方库(动态库) 详解

目录 1 代码共享的方式2 使用三方库2.1 准备一个动态库&#xff08;包含.h;.lib;.dll&#xff09;2.2 创建一个UE C工程2.3 配置三方库 1 代码共享的方式 在使用三方库之前&#xff0c;先介绍一下三方库的由来&#xff0c;以及为什么需要三方库。就从程序员共享代码成果开始讲述…

IP 协议

IP协议格式 四位版本号 用来表示IP协议的版本,现有的IP协议只有两个版本,IPv4,IPv6,其他版本只在实验室中存在,没有大规模商用 四位首部长度 设定和TCP一样,IP报头是可变长的,IP报头又是带有选项(可以有,可以没有)的,这里的单位也是4个字节,也就是最大有16*464个字节的长度 …

PHP8中调换数组中的键值和元素值-PHP8知识详解

在php8中使用array_flip()函数可以调换数组中的键值和元素值。 在PHP8中使用array_flip()函数可以调换数组中的键值和元素值&#xff0c;示范代码如下&#xff1a; <?php$stu array("子涵"> 001,"欣怡"> 002,"梓涵">003,"晨曦…

华为云云耀云服务器L实例评测|centos7.9在线使用cloudShell下载rpm解压包安装mysql并开启远程访问

文章目录 ⭐前言⭐使用华为cloudShell连接远程服务器&#x1f496; 进入华为云耀服务器控制台&#x1f496; 选择cloudShell ⭐安装mysql压缩包&#x1f496; wget下载&#x1f496; tar解压&#x1f496; 安装步骤&#x1f496; 初始化数据库&#x1f496; 修改密码&#x1f4…

外卖小程序开发指南:打造完美的点餐体验

第一步&#xff1a;项目设置和初始化 首先&#xff0c;您需要选择一个适合您的开发平台&#xff0c;例如微信小程序、支付宝小程序或其他移动应用平台。接下来&#xff0c;创建一个新的小程序项目&#xff0c;并初始化所需的文件和目录。 示例代码&#xff08;微信小程序&am…

02_elasticsearch 核心概念

02_elasticsearch 核心概念 1、lucene和elasticsearch的前世今生2、elasticsearch的核心概念 1、lucene和elasticsearch的前世今生 1、lucene和elasticsearch的前世今生 lucene&#xff1a;最先进、功能最强大的搜索库。但是直接基于lucene开发&#xff0c;非常复杂&#xff…

pcl--第十节 点云曲面重建

曲面重建技术在逆向工程、数据可视化、机器视觉、虚拟现实、医疗技术等领域中得到了广泛的应用 。 例如&#xff0c;在汽车、航空等工业领域中&#xff0c;复杂外形产品的设计仍需要根据手工模型&#xff0c;采用逆向工程的手段建立产品的数字化模型&#xff0c;根据测量数据建…

透视俄乌网络战之四:西方科技巨头的力量

透视俄乌网络战之一&#xff1a;数据擦除软件 透视俄乌网络战之二&#xff1a;Conti勒索软件集团&#xff08;上&#xff09; 透视俄乌网络战之三&#xff1a;Conti勒索软件集团&#xff08;下&#xff09; 西方科技巨头的力量 1. Palantir2. SpaceX3. Maxar Technologies4. Cl…

【虚幻引擎】UE5 VLC接入网络监控、视频直播、网络直播支持RTSP、RTMP

一、如何更新自己的插件匹配自己想要的UE版本 我们在网上下载的插件一般是UE4版本的插件&#xff0c;这个时候就需要我们自己去修改编译&#xff0c;接下来教大家修改插件来适配自己的引擎。 如果不想自己编译代码&#xff0c;可以直接找我拿编译好的UE5.0、UE5.1、UE5.2的插件…