模式识别大作业(2)

模式识别大作业(2)

ID:6696330

大小:117.00 KB

页数:22页

时间:2018-01-22

模式识别大作业(2)_第1页
模式识别大作业(2)_第2页
模式识别大作业(2)_第3页
模式识别大作业(2)_第4页
模式识别大作业(2)_第5页
资源描述:

《模式识别大作业(2)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、模式识别大作业——用c聚类法对数据进行分类学号02105020姓名林桥洲院系电子工程学院专业智能科学与技术指导老师张向荣一对iris数据进行分类1对数据进行预处理,把iris文本文档中的类标分别改为a,r,c(即分别用a,r,c代表Iris-setosa,Iris-versicolor,Iris-virginica)2将文本文档中的数据读入到elment结构体中,该结构体包含每个数据和类别3定义三个结构体数组,分别用于存放分类后得到的数据,将三个样本均值赋初值,分别计算测试样本到样本中心的欧氏距离,将测试样本放在欧氏距离最小的那个样本中。4将所有数据分完类后,从新计算新的样本均值,与原来的样本

2、均值比较,若不相等,则将新的样本均值付给原来的样本均值,继续执行3,否则,结束循环,得到最终分类结果。5程序执行的结果如下:6程序的源代码如下:#include#include#includetypedefstruct//定义结构体,用于存储数据和其类型{doubled[4];charn;}elment;elmentall[150];elmenta[150];elmentb[150];elmentc[150];intk1,k2,k3;//用于记录a,b,c组元素的个数voidnewgetdata();//将文本文档中的数据取出,存在elem

3、ent的数组中doubledistance(double*f1,double*f2);//求两数之间的欧氏距离voidclassfy();//将数据分类voidcount();//统计数据的错误率以及错误个数voidcount(){classfy();inti;inta1=0,r1=0,c1=0;for(i=0;i

4、"第一类的错误率为%f",((float)a1/k1));printf("第二类错误的个数为%d",r1);printf("第二类的错误率为%f",((float)r1/k2));printf("第三类错误的个数为%d",c1);printf("第三类的错误率为%f",((float)c1/k3));}voidclassfy(){inti,j,k;doublemin=100;doubleavr11[4]={5.1,3.5,1.4,0.2},avr22[4]={7.0,3.2,4.7,1.4},avr33[4]={6.3,3.3,6.0,2.5};//样本中心初始化doubl

5、eavr1[4]={0,0,0,0},avr2[4]={0,0,0,0},avr3[4]={0,0,0,0};doublesum1[4]={0,0,0,0},sum2[4]={0,0,0,0},sum3[4]={0,0,0,0};doubledis1,dis2,dis3;newgetdata();dis1=distance(avr11,avr1);dis2=distance(avr22,avr2);dis3=distance(avr33,avr3);while((dis1>0.001)

6、

7、(dis2>0.001)

8、

9、(dis3>0.001)){k1=0;k2=0;k3=0;for(i=0;i<

10、4;i++){avr1[i]=avr11[i];avr2[i]=avr22[i];avr3[i]=avr33[i];}for(i=0;i<150;i++){min=100;dis1=distance(all[i].d,avr1);dis2=distance(all[i].d,avr2);dis3=distance(all[i].d,avr3);if(dis1

11、k1].n=all[i].n;k1++;}if(dis2==min){for(k=0;k<4;k++)b[k2].d[k]=all[i].d[k];b[k2].n=all[i].n;k2++;}if(dis3==min){for(k=0;k<4;k++)c[k3].d[k]=all[i].d[k];c[k3].n=all[i].n;k3++;}}for(k=0;k<4;k++){sum1[k]=0

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。