PeakCluster是Lu优化库中的一个函数,该函数利用数据曲线尖峰形状和位置进行聚类分析。

例子:2021 年高教社杯全国大学生数学建模竞赛 E题 中药材的鉴别 问题1:根据附件 1 中几种药材的中红外光谱数据,研究不同种类药材的特征和差异性,并鉴别药材的种类。

Lu脚本代码:

!!!using["luopt","math","win","sys"];
bf(x : i, static, kk : Array, row, column, ia, ss, iamax)= //按类别绘制数据曲线
{cwClearData(),i=-1, (++i<row).while{which{kk%(iamax+1) : if{ia[i,0]==kk%(iamax+1), cwAddCurve{ss, Array(i : all).reshape(), column}},cwAddCurve{ss, Array(i : all).reshape(), column}}},kk++
};
下一个类别(m,x :: next)= which{m==0 : next; m==1 : [next=next+x]; m==2 : [next=next-x]; m==3 : [next=x]; cwSetExeMsg()}; //修改模块变量next并刷新ChartWnd窗口的函数
init(x : i, j, k, ii, f, s, A1 : Array, row, column, ia, ss, iamax, next)=
{Array=matrix[GetFileName().readtxt()], //读取文件中的数据并转换为一个矩阵,文本文件中存放 E题 附件1 的数据(不包含首行和首列)len[Array,0,&row, &column], //用len函数取矩阵的行数和列数ii=3, k=column/ii,   //ii为列数据缩小倍数,使曲线更加平滑A1=new[real_s, row, k],i=-1, (++i<row).while{j=-1, (++j<k).while{ f=0.0, s=-1, (++s<ii).while{f=f+Array[i,j*ii+s]}, A1[i,j]=f/ii}},ia=new[ints, row, 3],PeakCluster[A1,ia,0,0.6,10,0.08,200,0, 100], //尖峰法聚类,改变参数对结果有重要影响f=fopen["F:\\a.txt","wb+"], fwrite[f,UTEXT,2], s=new[string,30], //将聚类结果写入文件i=-1, (++i<row).while{s[0]=0, sprintf(s,"%d\t%d\t%d", ia[i,0], ia[i,1], ia[i,2]), fwrite[f,s], fwrite[f,"\r\n"]},fclose[f],iamax=0, i=-1, (++i<row).while{ if{ia[i,0]>iamax, iamax=ia[i,0]}},ss=linspace(1.0,1.0*column,column),i=-1, (++i<row).while{cwAddCurve{ss, Array(i:all).reshape(), column}},next=0.0, cwSetExe[@bf],SetPara{ //GetWin(hChartWnd), //获得ChartWnd函数的窗口句柄。可以缺省该参数获得另一效果@下一个类别,0.0 //使参数next可动态修改},while{true, yield(0)}
};
ChartWnd[@init]; //显示窗口

结果:数据较多,略,仅根据图形进行分析。

图形0:这是所有数据曲线的图形,将要对这些数据曲线聚类。

图形1:第1个类别。

图形2:可以看出本图形显示有两个类别,由于PeakCluster参数没有选择好,未区分这两个类别,再次使用PeakCluster函数对此图形的数据分类可区分这两个类别。简便起见,上面两条曲线定为第2个类别 ,下面的曲线为第3个类别。

图形3:与以上图形均不同,为第4个类别。

图形4:与以上图形均不同,为第5个类别。

图形5:与以上图形均不同,为第6个类别。

图形6:虽与图形3中第4个类别有些相似,但仍有区别,故为第7个类别。

图形7:与图形5中第6个类别相似,故并入第6个类别。

图形8:与图形6中第7个类别相似,故并入第7个类别。

图形9:蓝色线与图形4中第5个类别相似,故并入第5个类别;红色线与图形3中第4个类别相似,故并入第4个类别。

图形10:与以上图形均不同,为第8个类别。

总结:使用PeakCluster函数聚类并结合图形观察,共分为8个类别。当然,由于类别4、5、6、7的相似性,也可看作是同一类别,但属于不同的亚种(产地)。

尖峰法聚类:2021 年高教社杯全国大学生数学建模竞赛 E题 中药材的鉴别 问题1相关推荐

  1. 2021 年高教社杯全国大学生数学建模竞赛 E 题 中药材的鉴别 第一题

    目录 1.数据预处理 1.1 数据基本信息探索 1.2 数据可视化 1.3 异常值处理 2. 数据特征值提取 2.1 数据标准化 2.2 PCA提取特征值 3. 数据聚类鉴别药材种类 3.1 肘部图确 ...

  2. 2021 年高教社杯全国大学生数学建模竞赛A题分析

    2021 年高教社杯全国大学生数学建模竞赛A题分析 题目 赛题分析 前言 问题一分析 问题二分析 问题三分析 题目 A 题 "FAST"主动反射面的形状调节 中国天眼--500 米 ...

  3. 2021年高教社杯全国大学生数学建模竞赛赛题C题 生产企业原材料的订购与运输 分析、思路与参考文献!!(关注持续更新!!)

    2021 年高教社杯全国大学生数学建模竞赛题目 C 题 生产企业原材料的订购与运输 某建筑和装饰板材的生产企业所用原材料主要是木质纤维和其他植物素纤维材料, 总体可分为 A,B,C 三种类型.该企业每 ...

  4. 2021 年高教社杯全国大学生数学建模竞赛 B题 乙醇偶合制备 C4 烯烃 求解思路1

    由附件1"性能数据表"中A1~A14(用装料方式I)整理得下表"sheet2": 表1 性能数据表 wt%Co/SiO2 Co/SiO2 和 HAP 的质量比 ...

  5. 2021 年高教社杯全国大学生数学建模竞赛 B题 乙醇偶合制备 C4 烯烃 求解思路2

    由附件1"性能数据表"中A1~A14(用装料方式I)整理得下表"sheet2": wt%Co/SiO2 Co/SiO2 和 HAP 的质量比 催化剂总量 乙醇浓 ...

  6. 2021年高教社杯全国大学生数学建模竞赛赛题B题乙醇偶合制备 C4 烯烃 赛题 及 参考资料大集合!!

    B 题 乙醇偶合制备 C4 烯烃(参考资料见文末地址下载!!) C4 烯烃广泛应用于化工产品及医药的生产,乙醇是生产制备 C4 烯烃的原料.在制备过程中,催化剂组合(即:Co 负载量.Co/SiO2 ...

  7. 2020年高教社杯全国大学生数学建模竞赛 C题思路

    2020年高教社杯全国大学生数学建模竞赛 C题 中小微企业的信贷决策 本文旨在为广大热爱建模的朋友们提供2020年数学建模C题的思路和解法. 问题回顾 在实际中,由于中小微企业规模相对较小,也缺少抵押 ...

  8. 2020年高教社杯全国大学生数学建模竞赛C题 第一问详细解答+代码

    2020年高教社杯全国大学生数学建模竞赛C题 第一问详细解答+代码 本文摘自小编自己的参赛论文与经历,小编获得了2020年高教社杯国奖,有问题的同学们可私聊博主哦. 1. 问题分析 问题一主要围绕信贷 ...

  9. 2020年高教社杯全国大学生数学建模竞赛C题 第二问详细解答+代码

    2020年高教社杯全国大学生数学建模竞赛C题 第二问详细解答+代码 本文摘自小编自己的参赛论文与经历,小编获得了2020年高教社杯国奖,有问题的同学们可私聊博主哦. 问题2 缺少信誉评级后的 信贷策略 ...

最新文章

  1. 计算机视觉领域不同的方向:目标识别、目标检测、语义分割等
  2. [pyinstaller]PermissionError: [Errno 13] Permission denied:C:\Users\xxx\AppData\Local\ucrtbase.dll
  3. MemoryStream的一些问题
  4. 【摩天好课】数字时代职业生涯规划
  5. Nutch使用方法简介
  6. 服务器客户端通信协议,Redis服务端-客户端通信协议
  7. 20165204 20165216 20165220 实验四 外设驱动程序设计
  8. 垂直跑马灯水平跑马灯
  9. 青藏高原的气候类型及气候特征
  10. 强化学习7——梯度及梯度下降法
  11. 架构问题--削峰填谷
  12. 宥马运动服务器正在维护,宥马运动ios版
  13. c++常用的 math 函数讲解
  14. 用Endnote在word中插入文献出现{Xu, 1997 #407}等样式的错误的解决方法如下
  15. RNA核糖核酸修饰RNA-HiLyte FluorTM 405荧光染料|RNA-HiLyte FluorTM 405
  16. 2021年Android工作或更难找,Android校招面试指南
  17. 整数与浮点数比较-汇编码分析
  18. STUFF函数介绍及使用场景
  19. flask返回 html_Flask中怎样返回html文件?
  20. 北交计算机学院研究,北京交通大学计算机与信息技术学院研究生导师:黄雅平...

热门文章

  1. 如何给机械臂添加hande机械爪并应用于moveit
  2. html鼠标悬停显示箭头,CSS 悬停时出现箭头的按钮
  3. 彩虹云任务7.2的视频搭建教程+源码
  4. 用笔记本编程,强烈建议外接一个大屏幕显示器!(最好用HDMI接口)
  5. 分享191个时尚Html模板总有一个适合你
  6. 计算机网络:随机访问介质访问控制之令牌传递协议
  7. 计算机基础知识(一)
  8. 中国姓氏对应英文翻译[zz]
  9. linux挂载dell7020存储,Dell md3820i存储阵列的配置管理及使用
  10. 匝间短路故障学习历程(三) -- 信号加噪去噪