




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上数据挖掘实验报告(一)数据预处理姓名:李圣杰班级:计算机1304学号: 一、实验目的1.学习均值平滑,中值平滑,边界值平滑的基本原理2.掌握链表的使用方法3.掌握文件读取的方法二、实验设备 PC一台,dev-c+5.11三、实验内容 数据平滑 假定用于分析的数据包含属性age。数据元组中age的值如下(按递增序):13, 15, 16, 16, 19, 20, 20, 21, 22, 22, 25, 25, 25, 25, 30, 33, 33, 35, 35, 35, 35, 36, 40, 45, 46, 52, 70。使用你所熟悉的程序设计语言进行编程,实现如下
2、功能(要求程序具有通用性):(a) 使用按箱平均值平滑法对以上数据进行平滑,箱的深度为3。(b) 使用按箱中值平滑法对以上数据进行平滑,箱的深度为3。(c) 使用按箱边界值平滑法对以上数据进行平滑,箱的深度为3。四、实验原理 使用c语言,对数据文件进行读取,存入带头节点的指针链表中,同时计数,均值求三个数的平均值,中值求中间的一个数的值,边界值将中间的数转换为离边界较近的边界值五、实验步骤代码专心-专注-专业#include <stdio.h>#include <stdlib.h>#include <math.h>#define DEEP 3#define
3、DATAFILE "data.txt"#define VPT 10/定义结构体typedef struct chainint num;struct chain *next;* data;/定义全局变量data head,p,q;FILE *fp;int num,sum,count=0;int i,j;int *box;voidmean();voidmedain();voidboundary();int main ()/定义头指针head=(data)malloc(sizeof(struct chain);head->next=NULL; /*打开文件*/fp=fope
4、n(DATAFILE,"r"); if(!fp)exit(0);p=head;while(!feof(fp)q=(data)malloc(sizeof(struct chain);q->next=NULL;fscanf(fp,"%d",&q->num); /*读一个数据*/p->next=q;p=q;count+; /* 关闭文件 */fclose(fp);/输出printf("源数据为:n");printf("共%d箱%d个数据n",count/DEEP,count);p=head-&g
5、t;next;count=1;num=1;while(p!=NULL)if(count=1)printf("箱%d:",num);if(count=DEEP)printf("%dn",p->num);num+;count=1;elseprintf("%d ",p->num);count+;p=p->next;mean();medain();boundary();scanf("%d",&i);return 0;/均值void mean()printf("均值平滑后为:")
6、;box=(int *)malloc(sizeof(int)*num);p=head->next;count=1;num=0;sum=0;while(p!=NULL)if(count=DEEP)count=1;sum=sum+p->num;boxnum=sum/DEEP;sum=0;num+;elsesum=sum+p->num;count+;p=p->next;for (i=0;i<num;i+)printf("n箱%d:",i+1);for (j=0;j<DEEP;j+)printf("%d ",boxi);p=h
7、ead->next;printf("n离群值为:");while(p!=NULL)for(i=0;i<num;i+)for (j=0;j<DEEP;j+)if(abs(p->num-boxi)>(int)VPT)printf("n箱%d:",i+1); printf("%d ",p->num); p=p->next;/中值void medain()printf("n中值平滑后为:");p=head->next;count=1;num=0;int mid;while(p
8、!=NULL)if(count=DEEP)boxnum=sum;count=1;num+;else if(count=DEEP/2|count=DEEP/2+1)if(DEEP%2)if(count=DEEP/2+1)sum=p->num;elseif(count=DEEP/2+1)sum=(p->num+mid)/2;elsemid=p->num;count+;p=p->next;for (i=0;i<num;i+)printf("n箱%d:",i+1);for (j=0;j<DEEP;j+)printf("%d "
9、,boxi);/边界值void boundary()printf("n边界值平滑后为:n");p=head->next;count=1;box=(int *)malloc(sizeof(int)*num*2);num=0;while(p!=NULL)if(count=DEEP)box2*num+1=p->num;count=1;num+;else if(count=1) box2*num=p->num; count+;p=p->next;p=head->next;count=1;num=0;while(p!=NULL)if(count=1)printf("箱%d:",num);if(p->num-box2*num)>(box2*num+1-p->num)printf("%d ",box2*num+1);elseprintf("%d ",box2*num);if(count=DEEP)printf(&qu
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 山东省日照市莒县联考2024-2025学年六年级下学期期末检测数学试题(无答案)
- 北师大版五年级上册数学第一单元 小数除法 检测卷(无答案)
- 财富广场租房合同范本
- 网贷还款合同范本
- 保安公司试用合同范本
- 钢构基础合同范本
- 冲压厂加工合同范本
- 木材加工企业合同范本
- 入股保本经营合同范本
- 装饰拆除施工合同范本
- 结核病筛查结果报告单
- GB/T 18051-2000潜油电泵振动试验方法
- 广告投放“冷启动期”及“ocpm起量”的底层逻辑
- 小学音乐《村晚》优质课件设计
- 竞选团支书幽默大气简短六篇
- 知名投资机构和投资人联系方式汇总
- (完整word版)教育部发布《3-6岁儿童学习与发展指南》(全文)
- 混凝土监理旁站记录
- 部门会签单模板
- 县城市管理领域集中行使行政处罚权工作衔接规范(试行)
- 结肠息肉的护理查房精编ppt
评论
0/150
提交评论