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

相关文章

Spring Boot 3.4.3 基于 Spring WebFlux 实现 SSE 功能(代码示例)

《SpringBoot3.4.3基于SpringWebFlux实现SSE功能(代码示例)》SpringBoot3.4.3结合SpringWebFlux实现SSE功能,为实时数据推送提供... 目录1. SSE 简介1.1 什么是 SSE?1.2 SSE 的优点1.3 适用场景2. Spring WebFlu

java之Objects.nonNull用法代码解读

《java之Objects.nonNull用法代码解读》:本文主要介绍java之Objects.nonNull用法代码,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录Java之Objects.nonwww.chinasem.cnNull用法代码Objects.nonN

SpringBoot实现MD5加盐算法的示例代码

《SpringBoot实现MD5加盐算法的示例代码》加盐算法是一种用于增强密码安全性的技术,本文主要介绍了SpringBoot实现MD5加盐算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习... 目录一、什么是加盐算法二、如何实现加盐算法2.1 加盐算法代码实现2.2 注册页面中进行密码加盐2.

python+opencv处理颜色之将目标颜色转换实例代码

《python+opencv处理颜色之将目标颜色转换实例代码》OpenCV是一个的跨平台计算机视觉库,可以运行在Linux、Windows和MacOS操作系统上,:本文主要介绍python+ope... 目录下面是代码+ 效果 + 解释转HSV: 关于颜色总是要转HSV的掩膜再标注总结 目标:将红色的部分滤

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

在C#中调用Python代码的两种实现方式

《在C#中调用Python代码的两种实现方式》:本文主要介绍在C#中调用Python代码的两种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#调用python代码的方式1. 使用 Python.NET2. 使用外部进程调用 Python 脚本总结C#调

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

Java时间轮调度算法的代码实现

《Java时间轮调度算法的代码实现》时间轮是一种高效的定时调度算法,主要用于管理延时任务或周期性任务,它通过一个环形数组(时间轮)和指针来实现,将大量定时任务分摊到固定的时间槽中,极大地降低了时间复杂... 目录1、简述2、时间轮的原理3. 时间轮的实现步骤3.1 定义时间槽3.2 定义时间轮3.3 使用时

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

如何解决Spring MVC中响应乱码问题

《如何解决SpringMVC中响应乱码问题》:本文主要介绍如何解决SpringMVC中响应乱码问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC最新响应中乱码解决方式以前的解决办法这是比较通用的一种方法总结Spring MVC最新响应中乱码解