2022高教社杯全国大学生数学建模竞赛C题 问题一(1) Python代码演示

news/2024/10/4 20:34:03/文章来源:https://blog.csdn.net/weixin_45481473/article/details/142308773

目录

  • 问题 1
    • 1.1 对这些玻璃文物的表面风化与其玻璃类型、纹饰和颜色的关系进行分析
      • 数据探索 -- 单个分类变量的绘图
        • 树形图
        • 条形图
        • 扇形图
        • 雷达图
      • Cramer’s V 相关分析
      • 统计检验
        • 列联表分析
        • 卡方检验
        • Fisher检验
      • 绘图
        • 堆积条形图
        • 分组条形图
      • 分类模型
        • Logistic回归
        • 随机森林

import matplotlib.pyplot as plt
# Linux show Chinese characters *** important
plt.rcParams['font.family'] = 'WenQuanYi Micro Hei' import warnings
warnings.filterwarnings("ignore")
import pandas as pd# read by default 1st sheet of an excel file
path = '/home/shiyu/Desktop/path_acdemic/ant/数模/历年题目/2022/附件.xlsx'
d1 = pd.read_excel(path, sheet_name='表单1')
d2 = pd.read_excel(path, sheet_name='表单2')
d3 = pd.read_excel(path, sheet_name='表单3')print(d1.shape)
print(d2.shape)
print(d3.shape)
(58, 5)
(69, 15)
(8, 16)

问题 1

1.1 对这些玻璃文物的表面风化与其玻璃类型、纹饰和颜色的关系进行分析

数据探索 – 单个分类变量的绘图

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

树形图

https://www.geeksforgeeks.org/treemaps-in-python-using-squarify/

import seaborn as sb 
import matplotlib.pyplot as plt
import squarifydata = list(d1['颜色'].value_counts())
labels = list(d1['颜色'].value_counts().index)plt.rcParams['figure.dpi'] = 300
plt.rcParams['savefig.dpi'] = 300plt.figure(figsize=(15,8))
squarify.plot(sizes=data, label=labels, text_kwargs={'fontsize': 20},color=sb.color_palette("Spectral",len(data))) plt.axis("off") 
(0.0, 100.0, 0.0, 100.0)

在这里插入图片描述

条形图
df = pd.DataFrame(d1['颜色'].value_counts())
df['颜色'] = df.index
df
count颜色
颜色
浅蓝20浅蓝
蓝绿15蓝绿
深绿7深绿
4
浅绿3浅绿
深蓝2深蓝
2
绿1绿
import matplotlib.pyplot as plt
import plotly.express as px
import numpy as np# Linux show Chinese characters *** important
plt.rcParams['font.family'] = 'WenQuanYi Micro Hei' fig = px.bar(df, x="颜色", y="count", title="颜色类别计数")
# center title
fig.update_layout(title_x=0.5)
# remove background color
fig.update_layout({
'plot_bgcolor': 'rgba(0, 0, 0, 0)',
'paper_bgcolor': 'rgba(0, 0, 0, 0)',
})fig.show()

在这里插入图片描述

扇形图
print(d1['纹饰'].value_counts())
纹饰
C    30
A    22
B     6
Name: count, dtype: int64
import plotly.express as px
fig = px.pie(d1, names='纹饰', title="玻璃纹饰类别的比例分布")
# center title
fig.update_layout(title_x=0.5)
fig.show()

在这里插入图片描述

print(d1['类型'].value_counts())
fig = px.pie(d1, names='类型', title="玻璃类型的比例分布")
# center title
fig.update_layout(title_x=0.5)
fig.show()
类型
铅钡    40
高钾    18
Name: count, dtype: int64

在这里插入图片描述

print(d1['颜色'].value_counts

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

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

相关文章

STM32(十五):I2C通信

I2C通信 I2C(Inter IC Bus)是由Philips公司开发的一种通用数据总线,实现单片机读写外部模块寄存器的功能。 两根通信线:SCL(Serial Clock)、SDA(Serial Data) 同步,半双工…

【MySQL】MySQL中JDBC编程——MySQL驱动包安装——(超详解)

前言: 🌟🌟本期讲解Java中JDBC编程,希望能帮到屏幕前的你。 🌈上期博客在这里:【MySQL】MySQL索引与事务的透析——(超详解)-CSDN博客 🌈感兴趣的小伙伴看一看小编主页&a…

C语言-数据结构 弗洛伊德算法(Floyd)邻接矩阵存储

弗洛伊德算法相比迪杰斯特拉相似的地方都是遍历邻接矩阵不断调整最短路径的信息,并且两种算法面对多源最短路径的时间复杂度都是O(n^3),Floyd采用的是动态规划而Dijkstra是采用贪心的思想。在Floyd中我们将创建两个数组进行辅助,一个path二维…

mysql Field ‘ssl_cipher‘ doesn‘t have a default value的解决

1、执行sql的时候报错: 16:48:00 INSERT INTO mysql.user (Host,User,authentication_string) VALUES(%,root, PASSWORD(12323)) Error Code: 1364. Field ssl_cipher doesnt have a default value 0.000 sec 1、解决,执行命令: my…

秒懂C++之智能指针

目录 前言 智能指针的使用及原理 RAII RAII弊端 std::auto_ptr std::unique_ptr std::shared_ptr shared_ptr弊端 std::weak_ptr 扩展(删除器) 前言 为了解决抛异常所造成的内存泄漏等问题~秒懂C之异常-CSDN博客~我们来学习智能指针的相关用法…

鸿蒙OS 线程间通信

鸿蒙OS 线程间通信概述 在开发过程中,开发者经常需要在当前线程中处理下载任务等较为耗时的操作,但是又不希望当前的线程受到阻塞。此时,就可以使用 EventHandler 机制。EventHandler 是 HarmonyOS 用于处理线程间通信的一种机制&#xff0c…

CefSharp_Vue交互(Element UI)_WinFormWeb应用---设置应用透明度(含示例代码)

一、界面预览 1.1 设置透明(整个页面透明80%示例) 限制输入值:10-100(数字太小会不好看见) 1.2 vue标题栏 //注册类与js调用 (async function(

【课程学习】信号检测与估计II

b站 文章目录 1-概述贝叶斯方法1-概述 线性、正交、平稳、高斯 研究线性模型,采用正交化方法,假设信号平稳,考虑信号的统计特性是高斯的。 本学期考虑,非线性、非正交、非平稳、非高斯。 阵列处理 1980-1990 MUSIC 稀疏性 2006-2012 LASS 时频分析 1995-2000 小波 贝叶斯 2…

【Linux】网络层协议——IP

一、IP协议 在前面,我们学习了应用层和传输层,接下来,我们来学习网络层,网络层的主要功能是在复杂的网络环境中确定一个合适的路由。 1.1 IP协议的基本概念 主机:配有IP地址,有可以进行路由控制的设备路由…

​​​​​​​Oracle11 分析函数等高级函数使用说明

目录 1、Group by 2、Connect by 3、分析函数 4、Model 5、Listagg与自定义聚合函数 1、Group by 与GROUP BY 一起使用的关建字 GROUPING , ROLLUP,CUBE,结合这些特性的函数可以实现SQL的明细分组统计 GROUPING 记录是对哪个字段进行统计 select deptno,job,sum(sal),gro…

信息安全数学基础(7)最小公倍数

前言 在信息安全数学基础中,最小公倍数(Least Common Multiple, LCM)是一个重要的概念,它经常与最大公约数(Greatest Common Divisor, GCD)一起出现,两者在数论、密码学、模运算等领域都有广泛的…

手把手教你:在微信小程序中加载map并实现拖拽添加标记定位

本文将为大家详细介绍如何在微信小程序中加载map组件,并实现拖拽标记定位功能。 实现步骤 1、首先,我们需要在项目的app.json文件中添加map组件的相关配置。如下所示: {"pages": ["pages/index/index"],"permiss…

CesiumJS+SuperMap3D.js混用实现可视域分析 S3M图层加载 裁剪区域绘制

版本简介: cesium:1.99;Supermap3D:SuperMap iClient JavaScript 11i(2023); 官方下载文档链家:SuperMap技术资源中心|为您提供全面的在线技术服务 示例参考:support.supermap.com.cn:8090/w…

Axure RP实战:打造高效图形旋转验证码

Axure RP实战:打造高效图形旋转验证码 在数字产品设计的海洋中,验证码环节往往是用户交互体验的细微之处,却承载着验证用户身份的重要任务。 传统的文本验证码虽然简单直接,但随着用户需求的提高和设计趋势的发展,它…

智慧火灾应急救援:无人机、直升机航拍视角下的火灾应急救援检测数据集代码

智慧火灾应急救援:无人机、直升机航拍视角下的火灾应急救援检测数据集 引言 随着科技的发展,无人机、直升机等飞行器在火灾应急救援中的应用越来越广泛。这些飞行器不仅能快速到达火场,而且可以通过搭载的高清摄像机和其他传感器获取火场的…

DFS:深搜+回溯+剪枝实战解决OJ问题

✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一 排列、子集问题 1.1 全排列I 1.2 子集I 1.3 找出所有子集的异或总和 1.4 全排列II 1.5 字母大小写全排列 1.6 优美的排列 二 组合问题 2.1 电话号码的数字组合 …

linux驱动开发-arm汇编基础

目录 写在前面 1、Cortex-A7 处理器有 9 种处理模式 2、Cortex-A 寄存器组 通用寄存器 1、汇编语法 2、Cortex-A7 常用汇编指令 2.1 处理器内部数据传输指令 2.1.1 传输数据操作类型 1、MOV指令 2、MRS指令 3、MSR指令 2.2、存储器访问指令 2.2.1 LDR指令 2.2.2 …

电气自动化入门02:三相交流电及其主要应用参数

视频链接:1.2 电工知识:三相交流电及其主要应用参数_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1PJ41117PW?p3&vd_sourceb5775c3a4ea16a5306db9c7c1c1486b5 1.什么是交流电 交流电就是:大小和方向都随时间不断变化的电流 2…

人工智能时代,程序员如何保持核心竞争力?

随着AIGC(如ChatGPT、MidJourney、Claude等)大语言模型的快速发展,程序员的工作模式正经历前所未有的变革。虽然AI辅助编程工具的普及为程序员提供了更高的工作效率,但也引发了对未来工作的深刻思考。面对这一趋势,程序…

Idea 中的一些配置

配置 javap jdk 自带的 javap 可以用来查看字节码信息。 配置过程: 打开设置,定位到 Tools,External Tools新建项,Program 中填 javap 的路径Argument 中填 -c $FileClass$Working directory 中填 $OutputPath$ Argument 中也…