数据挖掘实验一数据预处理(总5
页)
--本页仅作为文档封面,使用时请直接删除即可-- --内页可以根据需求调整合适字体及大小--
实验一、 数据预处理
?
实验目的:
学院 计算机科学与软件学院
(1)熟悉 VC++编程工具和完全数据立方体构建、联机分析处理算法。 (2)浏览拟被处理的的数据,发现各维属性可能的噪声、缺失值、不一致
性等,针对存在的问题拟出采用的数据清理、数据变换、数据集成的具体算法。 (3)用 VC++编程工具编写程序,实现数据清理、数据变换、数据集成等功 能。
(4)调试整个程序获得清洁的、一致的、集成的数据,选择适于全局优化 的参数。
? 实验原理:
1 、数据预处理
现实世界中的数据库极易受噪音数据、遗漏数据和不一致性数据的侵扰,为 提高数据质量进而提高挖掘结果的质量,产生了大量数据预处理技术。数据预处 理有多种方法:数据清理,数据集成,数据变换,数据归约等。这些数据处理技 术在数据挖掘之前使用,大大提高了数据挖掘模式的质量,降低实际挖掘所需要 的时间。
2 、数据清理
数据清理例程通过填写遗漏的值,平滑噪音数据,识别、删除离群点,并解 决不一致来“清理”数据。 3 、数据集成 数据集成
数据集成将数据由多个源合并成一致的数据存储,如数据仓库或数据立方 体。
4 、数据变换
通过平滑聚集,数据概化,规范化等方式将数据转换成适用于数据挖掘的形 式。
5 、数据归约
使用数据归约可以得到数据集的压缩表示,它小得多,但能产生同样(或几 乎同样的)分析结果。常用的数据归约策略有数据聚集、维归约、数据压缩和数 字归约等。
三、 实验内容:
1 、主要代码及注释 头文件
#include
1
using namespace std; 1、建立存储结构 class Sales {
public:
string serial; int market; int posno; string date; int sn; int id; float num; float price; float total; void print() {
cout << serial<< \ \ } };
2、打开源 txt 文件,并创建保存的 txt 文件 ifstream infile(\ /*string contents;*/ if()) { 7
cout << \ }
ofstream outfile(\ if(!outfile) {
cout<<\ exit(1); }
3、访问 txt 文件中的数据
while(!())erial >> sal[sal_size].market >> sal[sal_size].posno>> sal[sal_size].date>> sal[sal_size].sn>> sal[sal_size].id>> sal[sal_size].num>>
sal[sal_size].price>> sal[sal_size].total; sal_size++; }
2