2024年电工杯B题论文首发+问题一论文代码分享

2024-05-25 11:04

本文主要是介绍2024年电工杯B题论文首发+问题一论文代码分享,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题一论文代码链接:https://pan.baidu.com/s/1kDV0DgSK3E4dv8Y6x7LExA 
提取码:sxjm 
--来自百度网盘超级会员V5的分享

基于数据分析的大学生平衡膳食食谱的优化设计及评价

摘要

大学时期不仅是学术学习和身体成长的关键阶段,更是青年学生形成和培养健康饮食习惯的重要时期。本文将基于题目给出的数据进行大学生平衡膳食食谱的优化设计及评价。

这里利用《中国食物成分表》收集附件中所有主要成分物质中蛋白质、脂肪、碳水化合物、膳食纤维、酒精(乙醇)钙、铁、锌、维生素A、维生素B1/硫胺素、维生素B2/核黄素、维生素C 每种食物中每克蛋白质所含的必需氨基酸含量(mg/g蛋白质)异亮氨酸、亮氨酸、赖氨酸、含硫氨基酸、芳香族氨基酸、苏氨酸、色氨酸、缬氨酸 的具体含量相关数据。对于数据,还需要进行数据清洗,即利用KS检验判定分布方式,对于正态分布的数据使用3西格玛原则判定异常值,对于非正态分布的数据使用箱型图判定异常值。对于异常值进行剔除处理,因为剔除而导致的缺失值、数据本身的缺失值使用线性插值进行填充。利用数据清洗后的数据集,绘制可视化结果进行收集数据的描述。

针对问题一,膳食食谱的营养分析评价及调整。利用上述数据构建进行评价,首先根据收集到的61种主要成分按类别将食谱中食物归类排序,列出每种食物的数量,分析五大类别食物是否齐全,食物种类是否大于12种。根据处理后的数据结合学生食谱对主要营养素含量、食谱提供的能量、每餐的蛋白质氨基酸评分、餐次比及非产能主要营养素含量进行计算。并对结果进行可视化展示,利用结果进行分析食谱存在问题,根据存在问题进行微小调整

针对问题二,基于日食谱的优化设计。首先以蛋白质氨基酸评分最大为目标建立优化模型,我们以男生为例进行说明,决策变量x:每个键是食物名称,每个值是相应的决策变量,表示选择该食物的份数。将每餐和总日能量需求、宏量营养素比例、微量营养素的最低摄入量、食物种类和类别的多样性、餐次比需求、食物购买次数作为约束条件,为了提高求解效率,引入差分进化进行求解。对于以用餐费用最经济为目标建立优化模型,以最小化总费用作为目标函数,引入与上一问相同的优化模型进行求解,最终得到只需要31元就可以满足需求。最终,将蛋白质氨基酸评分以及餐费用经济进行加权,构建多目标优化模型进行求解。

针对问题三,以蛋白质氨基酸评分最大、用餐费用最经济、兼顾蛋白质氨基酸评分及经济性为目标,建立优化模型。决策变量表示每天每种食物的份数,每种食物每天购买次数、总能量约束在±10%之内、蛋白质、脂肪、碳水化合物比例约束、微量营养素约束、餐次比约束等作为约束条件,引入粒子群算法进行求解。

此外,本文还扩展到周食谱的设计,考虑了日常营养需求和经济性的平衡。通过模型优化结果,本研究识别了大学生饮食结构中的问题,并提出了针对性的改进建议,如多样化食物选择和规律用餐,以促进学生健康。

关键词:膳食优化,营养评价,数据分析,经济模型,健康饮食

  • 模型的建立与求解

5.1 数据预处理

5.1.1 数据收集

我们利用中国食物成分表,以及题目中出现的61种食物。对这61种食物的对应的物质中蛋白质、脂肪、碳水化合物、膳食纤维、酒精(乙醇)钙、铁、锌、维生素A、维生素B1/硫胺素、维生素B2/核黄素、维生素C 每种食物中每克蛋白质所含的必需氨基酸含量(mg/g蛋白质)异亮氨酸、亮氨酸、赖氨酸、含硫氨基酸、芳香族氨基酸、苏氨酸、色氨酸、缬氨酸 的具体含量进行收据,得到结果如下所示

图1:中国食物成品表

表1:收集部分数据

食物

蛋白质 (g)

碳水化合物 (g)

膳食纤维 (g)

脂肪 (g)

白菜

1.2

2.2

0.5

0.2

扁豆

22.3

60.1

4.8

1.1

菠菜

2.9

3.6

2.6

0.4

0.9

11.8

2.4

0.2

带鱼

18.8

0.1

0

9.7

稻米

7.4

76.9

0.7

0.9

地瓜

1.2

27.9

1.3

0.2

豆腐

8.1

2

0.3

4.1

豆芽

1.3

4.6

1.3

0.1

豆油

0

0

0

100

粉条

0.2

84.7

0

0

干豆腐

17.1

7.2

0.3

4.8

海带

1.7

8.6

3

0.2

胡萝卜

0.6

8.2

2

0.2

花生米

24.8

12

5.3

49.4

黄豆

36.3

23.5

11.2

16

首先将数据预处理后的数据集导入python,从Excel文件中读取数据,删除了不需要的行,并重新设置了数据列的名称。

对题目出现的61种成分进行了为每种食物添加了类别信息,以便后续统计分析。具体分类如下所示

表1:分类表

类别

具体内容

 蔬菜、菌藻、水果类,

白菜 扁豆 菠菜 橙 豆芽 海带 胡萝卜 黄瓜 韭菜 卷心菜 萝卜 蜜瓜 木耳 南瓜 苹果 葡萄 茄子 芹菜 青椒 酸菜 蒜台 西瓜 西红柿 香菇 香蕉 杏鲍菇 洋葱 油菜 柚子 紫菜

畜、禽、鱼、蛋类及制品,

带鱼 黄花鱼 火腿肠 鸡蛋 鸡肉 明太鱼 牛肉 茄汁沙丁鱼 五花猪肉 鱼丸 炸鸡块 猪排骨 猪肉 猪肉瘦

谷、薯类

稻米 地瓜 粉条 荞麦面 土豆 小麦粉 小米 玉米面

奶、干豆、坚果、种子类及制品

 豆腐 干豆腐 花生米 黄豆 牛奶 酸奶

 

图1:分类图

  首先,从Excel文件中读取食堂的一日三餐食物信息,并跳过第一行(因为第一行包含表头信息)。

   - 同时,从另一个Excel文件中读取所有食物的营养成分数据。

   - 为食堂数据设置适当的列名,分别是序号、食物名称、主要成分、食物编码、可食部(克/份)、价格(元/份)和是否可半份。

   - 为营养成分数据设置适当的列名,这些列名包括主要成分、蛋白质、脂肪、碳水化合物、膳食纤维、酒精、钙、铁、锌、维生素A、维生素B1、维生素B2、维生素C以及各类氨基酸含量。

   - 删除食堂数据中的“食物编码”列,因为它在后续计算中不需要。

   - 将食堂数据中的“可食部(克/份)”列转换为数值类型,确保数据在计算时能够正确处理。

   - 将清洗后的食堂数据和营养成分数据根据“主要成分”列进行合并。这一步确保每种食物的营养成分信息与其在食堂中的信息相对应。

计算每种食物的具体营养成分:

   - 对于每个营养成分(如蛋白质、脂肪、碳水化合物等),根据其在每100克中的含量和食堂数据中提供的“可食部(克/份)”,计算每份食物中实际的营养成分量。具体来说,将每100克的营养成分含量乘以对应的可食部(克/份)并除以100,得到每份食物的营养成分量。

   - 将合并并计算好的数据保存到一个新的Excel文件中,最终部分表格文件如下所示

 

化后具体数据结果如下所示

表1:结果可视化

类别

每日总摄入量:

植物油类              8

蛋白质 (g/100g)        93.6775

蔬菜、菌藻、水果类         6

脂肪 (g/100g)        115.6250

畜、禽、鱼、蛋类及制品       5

碳水化合物 (g/100g)     322.8300

谷、薯类              4

膳食纤维(g/100g)        34.9900

奶、干豆、坚果、种子类及制品    2

钙 (mg/100g)        616.2000

Name: count, dtype: int64

铁 (mg/100g)         24.6650

是否包含所有五大类食物: True

锌 (mg/100g)         11.7750

食物种类总数: 16

维生素A (µg/100g)     461.4000

必需氨基酸评分(AAS):

维生素B1 (mg/100g)      1.8085

异亮氨酸: 71.32262282832056

维生素B2 (mg/100g)      1.3935

亮氨酸: 70.62208107603212

维生素C (mg/100g)      19.4000

赖氨酸: 68.09552114241073

dtype: float64

含硫氨基酸: 47.93558447103855

蛋白质能量: 374.71000000000004 kcal

芳香族氨基酸: 60.373889140935646

脂肪能量: 1040.625 kcal

苏氨酸: 60.97568786528247

碳水化合物能量: 1291.32 kcal

色氨酸: 74.25742574257426

总能量: 2706.6549999999997 kcal

缬氨酸: 62.56134077019561

蛋白质能量占比: 13.84%

第一限制氨基酸: 含硫氨基酸

脂肪能量占比: 38.45%

第一限制氨基酸评分: 47.93558447103855

碳水化合物能量占比: 47.71%

 

这篇关于2024年电工杯B题论文首发+问题一论文代码分享的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1001318

相关文章

MyBatis模糊查询报错:ParserException: not supported.pos 问题解决

《MyBatis模糊查询报错:ParserException:notsupported.pos问题解决》本文主要介绍了MyBatis模糊查询报错:ParserException:notsuppo... 目录问题描述问题根源错误SQL解析逻辑深层原因分析三种解决方案方案一:使用CONCAT函数(推荐)方案二:

Redis 热 key 和大 key 问题小结

《Redis热key和大key问题小结》:本文主要介绍Redis热key和大key问题小结,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录一、什么是 Redis 热 key?热 key(Hot Key)定义: 热 key 常见表现:热 key 的风险:二、

IntelliJ IDEA 中配置 Spring MVC 环境的详细步骤及问题解决

《IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决》:本文主要介绍IntelliJIDEA中配置SpringMVC环境的详细步骤及问题解决,本文分步骤结合实例给大... 目录步骤 1:创建 Maven Web 项目步骤 2:添加 Spring MVC 依赖1、保存后执行2、将新的依赖

Spring 中的循环引用问题解决方法

《Spring中的循环引用问题解决方法》:本文主要介绍Spring中的循环引用问题解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录什么是循环引用?循环依赖三级缓存解决循环依赖二级缓存三级缓存本章来聊聊Spring 中的循环引用问题该如何解决。这里聊

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置

利用Python调试串口的示例代码

《利用Python调试串口的示例代码》在嵌入式开发、物联网设备调试过程中,串口通信是最基础的调试手段本文将带你用Python+ttkbootstrap打造一款高颜值、多功能的串口调试助手,需要的可以了... 目录概述:为什么需要专业的串口调试工具项目架构设计1.1 技术栈选型1.2 关键类说明1.3 线程模

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模