一种基于函数依赖的数据清洗方法技术

技术编号:13105613 阅读:40 留言:0更新日期:2016-03-31 11:53
本发明专利技术公开了一种基于函数依赖的数据清洗方法,其特征在于,包括:对原始数据进行数据转换,以将其不同类型的属性全部转换为数值型属性;对于数据转换后的原始数据,提取其属性的自依赖函数特征;对于数据转换后的原始数据,提取其属性之间的互依赖函数;根据自依赖函数特征和互依赖函数确定需要进行清洗及待清洗的属性及样本,并根据该属性及样本形成相关清洗决策依据,判断待清洗的属性对象是采用自依赖函数清洗还是采用互依赖函数进行清洗,若采用自依赖函数清洗,则将不符合条件的样本根据自依赖函数确定的多项式进行校准修复,并加上白噪声作为随机扰动。本发明专利技术能够解决大数据中“脏数据”问题,为后续的大数据分析挖掘提供高质量的数据。

【技术实现步骤摘要】

本专利技术属于大数据处理领域,更具体地,设及
技术介绍
随着移动互联网和信息技术的高速发展,政府、企业和各行业领域的数据WTB/s 的速度增长,人们生活、企业决策和精准服务对数据的依赖越来越重,对数据质量的要求也 越来越高,任何"脏数据"都将对数据分析和目标决策产生影响。随着"数据驱动运营"的意 识在各行各业得到广泛认识和普及,人们在数据分析和挖掘中花费的精力越来越大。其中 花费在"脏数据"处理上的时间超过80%。 导致"脏数据"的原因包括系统故障、跨系统、多源数据、数据标准变迁、录入差错 和数据稀疏等,最终导致数据缺失、数据错误、数据不一致等数据质量问题。鉴于此,近年 来,数据质量提升的研究和应用逐渐增多。有采用预设规则来清洗不同域数据,基于权重和 类别排序进行清洗,基于阔值和倍率为参数的横向清洗,基于时空因素的轨迹数据清洗。 然而,上述运些研究和方法在应用场景方面具有一定的局限性,要么受制于数据 本身的时空特性和重要程度,要么受专家经验影响较多。
技术实现思路
针对现有技术的W上缺陷或改进需求,本专利技术提供了一种基于函数依赖的数据清 洗方法,其目的在于,通过依靠数据本身特征,先将待分析数据通过联合集成,然后提取不 同属性间的函数依赖关系,根据函数依赖关系挖掘待清洗属性,并对此属性进行清洗和修 复,同时能够解决大数据中"脏数据"问题,为后续的大数据分析挖掘提供高质量的数据。 为实现上述目的,按照本专利技术的一个方面,提供了一种基于函数依赖的数据清洗 方法,包括W下步骤: (1)对原始数据进行数据转换,W将其不同类型的属性全部转换为数值型属性; [000引(2)对于数据转换后的原始数据,提取其属性的自依赖函数特征; (3)对于数据转换后的原始数据,提取其属性之间的互依赖函数; (4)根据步骤(2)的自依赖函数特征和步骤(3)的互依赖函数确定需要进行清洗及 待清洗的属性及样本,并根据该属性及样本形成相关清洗决策依据。 (5)判断待清洗的属性对象是采用自依赖函数清洗还是采用互依赖函数进行清 洗,若采用自依赖函数清洗,则将不符合条件的样本根据自依赖函数确定的多项式进行校 准修复,并加上白噪声作为随机扰动;若采用互依赖函数清洗,则将不符合条件的样本根据 互依赖函数确定的相关函数,W已校准的属性为基础对另一属性进行校准恢复。 优选地,步骤(1)包括W下子步骤: (1-1)从原始二维表中任选一属性列X,该属性列中的样本总数为N,将该样本按依 次顺序均匀分为3个集合{Xi,X2,X3},从Ξ个集合中分别随机选取min {N/9,100}个数据样 本; (1-2)采用正则表达式"r(-?\\d+)(\\.\\d+)?$T'分别对Ξ个集合进行数据类型 识别,并判断是否所有样本都满足正则匹配,若是则进入步骤(2),否则进入步骤(1-3); (1-3)提取Ξ个集合中不重复的值Xni,W及该值在本集合中独立数值的个数Nni, 并判断是否有Nni。,若是则进入步骤(1-4),否则进入步骤(1-5),其中0含η含min (N/9,100);[001 W (1 -4)将Xni离散化为0,1,若Nni = 3,将Xni离散化为-1,0和1,然后进入步骤(2); (1-5)进一步统计Ξ个集合中不重复值Xni出现的频次Xnij,其中j如ni; (1-6)将Ξ个集合中不重复值Xni更换为·完成初步量化; (1-7)判断Ξ个集合的唯一值是否不存在交集,若不存在交集则直接进入步骤 (2),否则进入步骤(1-8); 步骤1-8:对不同集合的Xnu求其平均值; 步骤1-9:对求平均值之后的Ξ个集合进行合并,将合并后的集合中剩余无交集的 数值修正为 优选地,步骤(2)包括W下子步骤: (2-1)任意选择某属性列并连续抽取该列中的N个值,W形成新的序列Xi; (2-2)将序列Xi移动1位,W形成序列y,i; (2-3)获得序列Xi与;的差值序列0,1,并判断该差值序列80%的样本是否趋近某 一固定常数或0,若是则将本属性列定义为线性自依赖函数,并跳转至步骤(4),否则进入步 骤(2-4); (2-4)将差值序列巧移动1位,形成序列巧1,求其差值序列并判断该差值序列 80%的样本是否趋近某一固定常数或0,若是则将本属性列定义为二次曲线自依赖函数,并 跳转至步骤(4),否则进入步骤(2-5); (2-5)迭代执行步骤(2-4),迭代次数为n,若η ^5,且80% W上的样本差值为常数 或0,则自依赖函数为?·(χ)=3χη+6χη-ι+...+αχ+β,并跳转至步骤(4),否则进入步骤(2-6); [002引 (2-6)求序列Xi的最大值maxXi和最小值minXi,并W此为基础对Xi进行归一化处 理,从而将Xi转换为 (2-7)?为步进长度,统计属性样本出现在10个区间的概率 分布,概率密度函数,并判断10个区间中所有区间的概率密度是否低于口限值ε = 1〇Λ若是 则认为该属性样本的该部分区间数需被清洗,然后进入步骤(4),否则进入步骤(3)。 优选地,步骤(3)包括W下子步骤: (3-1)抽取任两属性列X和Υ,提取两列的概率密度函数f(x)和f(y),判断两者概率 密度分布趋势是否趋同,若趋同则认为此两属性为相似属性f (x)Simf (y),并进入步骤(4), 否则进入步骤(3-2); (3-2)计算列X和Y的化arson相关系数p(x,y)和Spearman相关系数s(x,y),判断是 否满足条件0.5^ |p(x,y)ors(x,y)| ^1,若满足则表明两者强相关,可互相进行清洗,直接 进入步骤(4),否则进入步骤(3-3); (3-3)对属性列Χ、Υ,分别采用加、减、乘、除算术算子形成新的列Z,针对列Z,采用 步骤(2)所述方式建立自依赖函数。 优选地,步骤(4)包括W下子步骤: (4-1)判断属性序列是否满足自依赖函数特征,且存在不满足自依赖函数的样本 占比不超过ε = 10-2,若属性序列满足上述条件则确定该属性为待清洗对象并且将不满足自 依赖函数的样本作为待清洗样本,进入步骤(5),否则进入步骤(4-2); (4-2)判断属性序列是否满足步骤(3)确定的互依赖函数,并且判断属性序列中其 中某一属性是否为步骤(4-1)中已确定为不用清洗或待清洗的单属性对象,若是则将另一 属性确定为互依赖函数待清洗对象,并且进入步骤(5),否则进入步骤(4-3); (4-3)选取属性序列中的复合属性,并判断选取的复合属性是否与步骤(4-2)中的 两属性存在互依赖函数关系,若存在,则W此复合属性作为另外两属性的清洗依据,进入步 骤(5),否则进入步骤(4-4); (4-4)采用横向的样本算术运算、装箱和积分方面对样本规约,形成新的属性序列 X',Υ',并进行该属性的函数依赖关系提取。 总体而言,通过本专利技术所构思的W上技术方案与现有技术相比,能够取得下列有 益效果: 1、普适性好:本专利技术的清洗方法依赖于属性间的函数关系,对于二值数据和命名 数据可转换为方便构造函数的数值属性。该方法相对其他清洗方法来说,更加客观,具备更 好地普适性; 2、扩展性好:本专利技术随着样本数量的自适应地学习函数及参数,避免了传统清洗 方法随样本空间而改变或调整数据清本文档来自技高网...

【技术保护点】
一种基于函数依赖的数据清洗方法,其特征在于,包括以下步骤:(1)对原始数据进行数据转换,以将其不同类型的属性全部转换为数值型属性;(2)对于数据转换后的原始数据,提取其属性的自依赖函数特征;(3)对于数据转换后的原始数据,提取其属性之间的互依赖函数;(4)根据步骤(2)的自依赖函数特征和步骤(3)的互依赖函数确定需要进行清洗及待清洗的属性及样本,并根据该属性及样本形成相关清洗决策依据。(5)判断待清洗的属性对象是采用自依赖函数清洗还是采用互依赖函数进行清洗,若采用自依赖函数清洗,则将不符合条件的样本根据自依赖函数确定的多项式进行校准修复,并加上白噪声作为随机扰动;若采用互依赖函数清洗,则将不符合条件的样本根据互依赖函数确定的相关函数,以已校准的属性为基础对另一属性进行校准恢复。

【技术特征摘要】

【专利技术属性】
技术研发人员:莫益军曾志华谭辉
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北;42

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1