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

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

目录

    • 1.2 结合玻璃的类型,分析文物样品表面有无风化化学成分含量的统计规律
      • 数据预处理
      • 绘图
        • 热力图
        • 相关系数图
        • 百分比条形图
        • 箱线图
        • 小提琴图
        • 直方图
        • KED图
      • 描述性统计分析
        • 偏度系数
        • 峰度系数
        • 其它统计量

1.2 结合玻璃的类型,分析文物样品表面有无风化化学成分含量的统计规律

在这里插入图片描述

数据预处理

# replace na with 0
d2 = d2.fillna(0)
# sum by rows
d2['rowSum'] = d2.iloc[:,1:15].sum(axis=1)# add 文物编号 through subset 文物采样点
res = []
for i in range(d2.shape[0]):res.append(d2.iloc[:,0][i][0:2])
d2['文物编号'] = res
d2['文物编号'] = d2['文物编号'].astype(int)
print('the max value is:', max(d2['rowSum']))# select the effective data with sums in the range of 85~105
my_index = d2['rowSum'] >= 85
# return the index with ture
d2_sub = d2.loc[my_index,:]print(d2.shape[0] - d2_sub.shape[0], 'rows are removed')
the max value is: 100.0
2 rows are removed
# marge d1 and d2_sub
d12 = pd.merge(d1, d2_sub, on='文物编号')res = []
for i in range(d12.shape[0]):res.append(d12.iloc[i,5][2:])for i in range(len(res)):if res[i] == '' or res[i] == '部位1' or res[i] == '部位2':res[i] = '其它'for i in range(len(res)):if res[i] == '未风化点1' or res[i] == '未风化点2':res[i] = '未风化点'd12['风化标记'] = res
d12.head(3)
文物编号纹饰类型颜色表面风化文物采样点二氧化硅(SiO2)氧化钠(Na2O)氧化钾(K2O)氧化钙(CaO)...氧化铁(Fe2O3)氧化铜(CuO)氧化铅(PbO)氧化钡(BaO)五氧化二磷(P2O5)氧化锶(SrO)氧化锡(SnO2)二氧化硫(SO2)rowSum风化标记
01C高钾蓝绿无风化0169.330.09.996.32...1.743.870.000.01.170.000.00.3997.61其它
12A铅钡浅蓝风化0236.280.01.052.34...1.860.2647.430.03.570.190.00.0099.89其它
23A高钾蓝绿无风化03部位187.050.05.192.01...0.000.780.250.00.660.000.00.00100.00其它

3 rows × 22 columns

绘图

热力图
import numpy as np
np.bool = np.bool_d12_K_no_wind = d12.iloc[np.where((d12['类型'] == '高钾') & (d12['表面风化'] == '无风化'))[0],:]
d12_K_wind = d12.iloc[np.where((d12['类型'] == '高钾') & (d12['表面风化'] == '风化'))[0],:]
d12_Pb_no_wind = d12.iloc[np.where((d12['类型'] == '铅钡') & (d12['表面风化'] == '无风化'))[0],:]
d12_Pb_wind = d12.iloc[np.where((d12['类型'] == '铅钡') & (d12['表面风化'] == '风化'))[0],:]d12_K_no_wind.index = range(d12_K_no_wind.shape[0])
d12_K_wind.index = range(d12_K_wind.shape[0])
d12_Pb_no_wind.index = range(d12_Pb_no_wind.shape[0])
d12_Pb_wind.index = range(d12_Pb_wind.shape[0])
fig = px.imshow(d12_K_no_wind.iloc[:,6:20], text_auto=True, title="高钾 & 表面未风化")
# set figute size
fig.update_layout(autosize=False, width=700, height
http://www.lryc.cn/news/439581.html

相关文章:

  • ARACom Proxy Class API 概念
  • 【Scala入门学习】基本数据类型和变量声明
  • C#基础(13)结构体
  • Excel图片批量插入单元格排版处理插件【图片大师】
  • 应用性能优化实践(二)提升应用启动和响应速度
  • 接口测试系列文章专题
  • Unity Hub自动安装指定版本Unity的Android开发环境
  • 从0开始学ARM
  • 每日一题——第九十四题
  • Linux 开发工具(vim、gcc/g++、make/Makefile)+【小程序:进度条】-- 详解
  • 后续学习规划 ----含我个人的学习路线,经历及感受
  • Skytower
  • 成型的程序
  • 卡尔曼滤波中Q和R与噪声的关系
  • sicp每日一题[2.10]
  • MCN跨国企业如何从0到1搭建ITSM运维体系
  • 【C++入门学习】7. 类型
  • 视频服务器:GB28181网络视频协议
  • vue3 一次二次封装element-plus组件引发的思考
  • [Web安全 网络安全]-文件读取与下载漏洞
  • 2024.9.12(k8s环境搭建2)
  • Redis 字典的哈希函数和 rehash 操作详解
  • 汉王手写签批控件如何在谷歌、火狐、Edge等浏览器使用
  • Halo 开发者指南——项目运行、构建
  • 【C++】——list
  • 07_Python数据类型_集合
  • 结合人工智能,大数据,物联网等主流技术实现业务流程的闭环整合的名厨亮灶开源了
  • vue环境搭建相关介绍
  • MyBatis系统学习(四)——MyBatis的关联映射和缓存机制
  • 【iOS】present和push