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

2022高教社杯全国大学生数学建模竞赛C题 问题三问题四 Python代码

目录

    • 问题3
      • 3.1 对附件表单 3 中未知类别玻璃文物的化学成分进行分析,鉴别其所属类型
      • 3.2 对分类结果的敏感性进行分析
    • 问题4
      • 4.1 针对不同类别的玻璃文物样品,分析其化学成分之间的关联关系
        • 绘图
          • 散点图
          • 相关系数图

问题3

在这里插入图片描述

3.1 对附件表单 3 中未知类别玻璃文物的化学成分进行分析,鉴别其所属类型

d3 = d3.fillna(0)
prediction = ["高钾" if i <= 5.46 else '铅钡' for i in d3['氧化铅(PbO)']]
d3['玻璃类型预测'] = predictionprint('鉴别出的玻璃类型如下:')
d3.iloc[:,[0,16]]
鉴别出的玻璃类型如下:
文物编号玻璃类型预测
0A1高钾
1A2铅钡
2A3铅钡
3A4铅钡
4A5铅钡
5A6高钾
6A7高钾
7A8铅钡

3.2 对分类结果的敏感性进行分析

from scipy.cluster.hierarchy import dendrogram, linkage
import numpy as np
import matplotlib.pyplot as pltdf = d3.iloc[:,2:16]
linkage_data = linkage(df, method='ward', metric='euclidean')
dendrogram(linkage_data, labels=list(d3.iloc[:,0]))
plt.show()

在这里插入图片描述

from sklearn.cluster import AgglomerativeClustering
hierarchical_cluster = AgglomerativeClustering(n_clusters=2, affinity='euclidean', linkage='ward')
labels = hierarchical_cluster.fit_predict(df)
labels
array([1, 0, 0, 0, 0, 1, 1, 0])

当我们对样本进行层次聚类时,得到的聚类簇与鉴别出的玻璃类型相一致

问题4

4.1 针对不同类别的玻璃文物样品,分析其化学成分之间的关联关系

绘图
散点图
import seaborn as sns
sns.pairplot(d12.iloc[:,[2] + list(range(6,20))], hue='类型')
<seaborn.axisgrid.PairGrid at 0x7f10e313dbe0>

在这里插入图片描述

相关系数图
import numpy as np
np.bool = np.bool_
cor = round(d12_Pb.corr(), 2)
fig = px.imshow(cor, text_auto=True, title='铅钡玻璃')
# set figute size
fig.update_layout(autosize=False, width=600, height=600)
# center title
fig.update_layout(title_x=0.5)
fig.show()

在这里插入图片描述

import numpy as np
np.bool = np.bool_
cor = round(d12_K.corr(), 2)
fig = px.imshow(cor, text_auto=True, title='高钾玻璃')
# set figute size
fig.update_layout(autosize=False, width=600, height=600)
# center title
fig.update_layout(title_x=0.5)
fig.show()

在这里插入图片描述
相关阅读:
2022高教社杯全国大学生数学建模竞赛C题 问题二(1) Python代码
2023高教社杯全国大学生数学建模竞赛C题 Python代码
2021高教社杯全国大学生数学建模竞赛C题 问题一&问题二 Python代码

http://www.lryc.cn/news/440088.html

相关文章:

  • 易于理解和实现的Python代码示例
  • Visual Studio 2019/2022 IntelliCode(AI辅助IntelliSense)功能介绍
  • mac安装swoole过程
  • 代码随想录算法训练营第三十二天 | 509. 斐波那契数,70. 爬楼梯,746. 使用最小花费爬楼梯
  • Oracle发送邮件功能:配置自动化发信指南?
  • 探索 InternLM 模型能力边界
  • Python 数学建模——Pearson/Spearman 相关系数
  • QUIC的loss detection学习
  • 【QT】使用QOpenGLWidget后,窗口全屏之后右键菜单出不来的问题
  • MySQL 8.0授权语法变更及解决方案‌
  • 2024 VMpro 虚拟机中如何给Ubuntu Linux操作系统配置联网
  • 详解Diffusion扩散模型:理论、架构与实现
  • 坐牢第三十八天(Qt)
  • (十五)、把自己的镜像推送到 DockerHub
  • 【云岚到家-即刻体检】-day07-2-项目介绍及准备
  • SpringCloud Alibaba之Nacos服务注册和配置中心
  • 面试官:讲一讲Spring MVC源码解析
  • 815. 公交路线(24.9.17)
  • Rust: Warp RESTful API 如何得到客户端IP?
  • 添加选择登录ssh终端
  • 【基于 Delphi 的人才管理系统】
  • GetMaterialApp组件的用法
  • ubuntu安装mysql 8.0忘记root初始密码,如何重新修改密码
  • Vue3项目开发——新闻发布管理系统(七)
  • ICMP
  • Unity-Transform类-旋转
  • 如何使用 Vue 3 的 Composition API
  • Mamba环境配置教程【自用】
  • 2021 年 6 月青少年软编等考 C 语言二级真题解析
  • 2024网络安全、应用软件系统开发决赛技术文件