数据挖掘步骤包括

数据挖掘步骤包括,第1张

数据本身来考虑,通常数据挖掘需要有信息收集、数据集成、数据规约、数据清理、数据变换、数据挖掘实施过程、模式评估和知识表示等 8 个步骤。

(1)信息收集:根据确定的数据分析对象抽象出在数据分析中所需要的特征信息,然后选择合适的信息收集方法,将收集到的信息存入数据库。对于海量数据,选择一个合适的数据存储和管理的数据仓库是至关重要的。

(2)数据集成:把不同来源、格式、特点性质的数据在逻辑上或物理上有森让机地集中,从而为企业提供全面的数据共享。

(3)数据规约:执行多数的数据挖掘算法即使在少量数据上也需要很长的时间,而做商

业运营数据挖掘时往往数据量非常大。数据规约技术可以用来得到数据集的规约表示,它小得多,但仍然接近于保持原数据的完整性,并且规约后执行数据挖掘结果与规约前执行结果相同或几乎相同。

(4)数据清理:在数据库中的数据有一些是不完整的(有些感兴趣的属性缺少属性值),含噪声的(友腔包含错误的属性值),并且是不一致的(同样的信息不同的表示方式),因此需要进行数据清理,将完整、正确、一致的数据信息存入数据仓库中。不然,挖掘的结果会差强人意。

(5)数据变换:通过平滑聚集,数据概化,规范化等方式将数据转换成适用于数据挖掘的形式。对于有些实数型数据,通过概念分层和数据的离散化来转换数据也是重要的。

(6)数据挖掘过程:根据数据仓库中的数据信息,选择合适的分析工具,应用统计方法、事例推理、决策树、规则推理、模糊集、甚至神经网络、遗传算法的方法处理信息,得出有用的分析信息。

(7)模式评估:从商业角度,由行业专家来验证数据挖掘结果的正确性。

(8)知识表示:将数据挖掘所得到的分析信息以可视化的方式呈现给用户,或作为新的知识存放在知识库中,供其他应用程序使用。

数据挖掘过程是一个反复循环的过程,每一个步骤如果没有达到预期目标,都需要回到前面的步骤,重新调整并执行。不是每件数据挖掘的工作都需要这里列出的每一步,例如在某个工作中不存在多个数据源的时候,步骤(2)数据集成的步骤便可以省略。步骤(3)数据规约(4)数据清理(5)数据变换又合称数据预处理。在数据挖掘中,至少60%的费用可能要花在步骤(1)信息收集阶段,而至少 60%以上的精力和时间是花在此告局数据预处理过程上。

第一题结果:

#include <stdio.h>

#define DATALEN 27

int data[DATALEN]=

{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}

int nSmoothByMeans[DATALEN]={0}

int nSmoothByMedians[DATALEN]={0}

int nSmoothByBoundaries[DATALEN]={0}

void SmoothByMeans(int depth)

{

int i=0,j=0

int sum=0 , mean=0

for(i=0i<27i=i+3)

{

for (j=ij<i+depthj++)

{

sum+=data[j]

}

mean = sum/depth

for (j=ij<i+depthj++)

{

nSmoothByMeans[j]=mean

}

sum = 0

}

}

void SmoothByMedians(int depth)

{

int i=0,j=0

for(i=1i<27i=i+3)

{

for (j=i-1j<i+depthj++)

{

nSmoothByMedians[j]=data[i]

}

}

}

void 裤敏SmoothByBoundaries(int 核纯斗depth)

{

int i=0,j=0

for(i=0i<27i++)

{

nSmoothByBoundaries[i]=data[i]

}

for (i=1i<27i=i+3)

{

if (data[i]-data[i-1]>data[i+1]-data[i])

{

nSmoothByBoundaries[i]=data[i+1]

}

else

{

nSmoothByBoundaries[i]=data[i-1]

}

}

}

void main()

{

int depth = 3

int i=0

int j=0

SmoothByMeans(3)

SmoothByMedians(3)

SmoothByBoundaries(3)

printf("原始数据:\n")

for(i=0,j=1i<27i=i+3,++j)

{

printf("Bin %d : %d,%d,%d\n",

j,data[i],data[i+1],data[i+2])

}

printf("使用平均值:\n")

for(i=0,j=1i<27i=i+3,++j)

{

printf("Bin %d : %d,%d,%d\n",

j,nSmoothByMeans[i],nSmoothByMeans[i+1],nSmoothByMeans[i+2])

}

printf("使用中值:\n")

for(i=0,j=1i<27i=i+3,++j)

{

printf("Bin %d : %d,%d,%d\n",

j,nSmoothByMedians[i],nSmoothByMedians[i+1],nSmoothByMedians[i+2])

}

printf("使用边界值:\n")

for(i=0,j=1i<27i=i+3,++j)

{

printf("Bin %d : %d,%d,%d\n"改磨,

j,nSmoothByBoundaries[i],nSmoothByBoundaries[i+1],nSmoothByBoundaries[i+2])

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12407302.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存