首页> 中国专利> 数据缺项填补方法、装置、计算机设备和存储介质

数据缺项填补方法、装置、计算机设备和存储介质

摘要

本申请涉及一种数据缺项填补方法、装置、计算机设备和存储介质,所述方法包括:获取第一数据,并检测所述第一数据是否缺项;若缺项,计算所述第一数据的缺项个数;若所述缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略进行填补;其中,所述N为正整数;若所述缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补;其中,所述M大于所述N+1,所述M为正整数;若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法。通过本申请提供的数据缺项填补方法、装置、计算机设备和存储介质,能够准确的对缺项的数据进行填补。

著录项

  • 公开/公告号CN112685416A

    专利类型发明专利

  • 公开/公告日2021-04-20

    原文格式PDF

  • 申请/专利权人 平安普惠企业管理有限公司;

    申请/专利号CN202011612026.3

  • 发明设计人 白王梓松;

    申请日2020-12-30

  • 分类号G06F16/22(20190101);G06F16/21(20190101);

  • 代理机构44343 深圳市明日今典知识产权代理事务所(普通合伙);

  • 代理人王杰辉;罗志强

  • 地址 518000 广东省深圳市前海深港合作区前湾一路1号A栋201室(入驻深圳市前海商务秘书有限公司)

  • 入库时间 2023-06-19 10:41:48

说明书

技术领域

本申请涉及数据处理的技术领域,特别涉及一种数据缺项填补方法、装置、计算机设备和存储介质。

背景技术

在数据可视化日报制作和分析的过程中,往往会存在一部分字段维度是明显异常或者缺失为空的情况,在处理时将明显异常的值删除,此时所有空值的数据统一称为缺项数据值。

在可视化数据分析中,不能直接使用包含缺项数据的数据总体。因为有缺失项数据的情况时,计算均值、总和、方差等指标就会因缺项而导致计算异常或者明显误差。往往数据处理时,遇到这种情况通常做法都是简单的去除整条缺项数据,那么数据总体就有一定的损失,得到的可视化日报就不能相对准确反映销售业绩结果,如果缺项数量多的情况下,所绘制的图像就更不能真实的反映数据总体的情况。缺项数据虽然属于异常数据,但通常缺项只占数据维度的小部分,倘若直接删除整条将大大削弱第一数据总体的完整性。

发明内容

本申请的主要目的为提供一种数据缺项填补方法、装置、计算机设备和存储介质,旨在解决缺项填补不准确的技术问题。

为实现上述目的,本申请提供了一种数据缺项填补方法,包括以下步骤:

获取第一数据,并检测所述第一数据是否缺项;

若缺项,计算所述第一数据的缺项个数;

若所述缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略进行填补;其中,所述N为正整数;

若所述缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补;其中,所述M大于所述N+1,所述M为正整数;

若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法。

进一步地,所述若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法的步骤,包括:

获取所述第一数据的标记字段;

检测所述标记字段是否缺项;

若所述标记字段缺项,计算所述标记字段中的第一缺项个数;

若所述第一缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述标记字段的缺项进行填补;若所述第一缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述标记字段的缺项进行填补。

进一步地,所述若所述第一缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述标记字段的缺项进行填补;若所述第一缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补的步骤之后,包括:

检测所述标记字段是否存在衍生字段;

若存在所述衍生字段,检测所述衍生字段是否缺项;

若所述衍生字段缺项,计算所述衍生字段中的第二缺项个数;

若所述第二缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述衍生字段的缺项进行填补;若所述第二缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述衍生字段的缺项进行填补。

进一步地,所述若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法的步骤,包括:

根据预设分类算法对所述第一数据中的字段进行分类,得到若干字段组;

计算各个所述字段组的第三缺项个数;

若所述第三缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述第一数据的缺项进行填补;若所述第三缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述第一数据的缺项进行填补。

进一步地,所述计算所述第一数据的缺项个数的步骤之后,包括:

获取所述第一数据中具有时间特性的缺项的第一字段;

根据所述第一字段确定与其具有周期性质的第二字段;

检测所述第二字段是否缺项;

若所述第二字段不缺项,获取所述第一字段与所述第二字段之间的周期间隔;

根据所述周期间隔和所述第二字段确定所述第一字段的数据值。

进一步地,所述采用基于朴素贝叶斯的随机填补策略进行填补的步骤,包括:

获取若干第二数据;其中,所述第二数据的字段不缺项;

将所述第一数据的缺项的字段删除,并将删除后的第一数据和若干所述第二数据采用朴素贝叶斯法进行分组,得到若干数据分组;

在所述第一数据所在的数据分组中,采用公式

本申请还提供一种数据缺项填补装置,包括:

第一获取单元,用于获取第一数据,并检测所述第一数据是否缺项;

计算单元,用于若缺项,计算所述第一数据的缺项个数;

第一填补单元,用于若所述缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略进行填补;其中,所述N为正整数;

第二填补单元,用于若所述缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补;其中,所述M大于所述N+1,所述M为正整数;

第三填补单元,用于若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法。

进一步地,所述第三填补单元,包括:

获取子单元,用于获取所述第一数据的标记字段;

第一检测子单元,用于检测所述标记字段是否缺项;

第一计算子单元,用于若所述标记字段缺项,计算所述标记字段中的第一缺项个数;

第一填补子单元,用于若所述第一缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述标记字段的缺项进行填补;若所述第一缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述标记字段的缺项进行填补。

本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的数据缺项填补方法的步骤。

本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的数据缺项填补方法的步骤。

本申请提供的数据缺项填补方法、装置、计算机设备和存储介质,根据缺项个数确定不同的填补策略进行填补,合理利用不同填补策略的优势,能够更加准确的对缺项的数据进行填补,同时能够采用更少的时间成本和空间成本对第一数据进行填补。

附图说明

图1是本申请一实施例中数据缺项填补方法步骤示意图;

图2是本申请一实施例中数据缺项填补装置结构框图;

图3为本申请一实施例的计算机设备的结构示意框图。

本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

参照图1,本申请一实施例提供一种数据缺项填补方法,包括以下步骤:

步骤S1,获取第一数据,并检测所述第一数据是否缺项;

步骤S2,若缺项,计算所述第一数据的缺项个数;

步骤S3,若所述缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略进行填补;其中,所述N为正整数;

步骤S4,若所述缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补;其中,所述M大于所述N+1,所述M为正整数;

步骤S5,若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法。

本实施例中,如上述步骤S1-S2所述,每条第一数据中对应有多个字段,每个字段对应有数据值等,当该字段所对应的数据值缺失,表明该第一数据缺项,有多少个字段对应的数据值缺失,表明有多少个缺项个数。

当缺项个数属于第一预设范围[1,N]属于轻度缺项,采用基于朴素贝叶斯的随机填补策略进行填补,其可以用如下公式进行表示

其中,ymax

当缺项个数属于第二预设范围[N+1,M],属于中度缺项,采用基于KNN的加权均值填补策略进行填补,可以用如下公式进行表示:

其中,x

使用Z-Score方法标准化数据,公式如下:

使用标准化后的数据,针对缺项的情况,使用公式求出正常数据中对应剩余项与第一数据的欧式距离,并进行排序。求出与当前数据距离最近的k个数据对应缺项的加权平均值,并用该加权平均值填补缺项。采用基于KNN的加权均值填补,这种方法在缺项的数量多与少时,时间和空间代价都差不多,因此在处理较多缺项时具有优势,缺项极少时成本不够有优势。

本实施例中直接根据缺项个数去确定对应的填补策略,在不丢失大量第一数据的情况下,综合性的填补策略中和了不同填补算法的缺点,最大程度提高不同填补策略的优势,将缺项第一数据对总体的影响降低到最小。同时,标准化的第一数据预处理流程可以进一步提高第一数据分析效率,减少企业在第一数据分析中投入的人力成本,提高业绩分析的准确性,对业绩预测和修正提供指导作用。

在一实施例中,所述若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法的步骤,包括:

步骤S51,获取所述第一数据的标记字段;

步骤S52,检测所述标记字段是否缺项;

步骤S53,若所述标记字段缺项,计算所述标记字段中的第一缺项个数;

步骤S54,若所述第一缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述标记字段的缺项进行填补;若所述第一缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述标记字段的缺项进行填补。

本实施例中,在销售第一数据中,衍生字段繁多,这些衍生字段往往由一些字段计算或衍生出。此种情况下,可将一些容易衍生出其他衍生字段的字段进行标记,首先计算标记字段中的第一缺项个数,当第一缺项个数在第一预设范围[1,N]内时,采用上述的基于朴素贝叶斯的随机填补策略进行填补,当第一缺项个数在第二预设范围[N+1,M]内时,采用上述的基于KNN的加权均值填补策略进行填补。

在一实施例中,所述若所述第一缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述标记字段的缺项进行填补;若所述第一缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补的步骤S54之后,包括:

步骤S55,检测所述标记字段是否存在衍生字段;

步骤S56,若存在所述衍生字段,检测所述衍生字段是否缺项;

步骤S57,若所述衍生字段缺项,计算所述衍生字段中的第二缺项个数;

步骤S58,若所述第二缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述衍生字段的缺项进行填补;若所述第二缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述衍生字段的缺项进行填补。

本实施例中,当标记字段填补完成后,再根据标记字段确定其对应的衍生字段是否缺项,若衍生字段缺项,再计算衍生字段中的第二缺项个数,再根据第二缺项个数去确定对应的填补方法,当衍生字段存在多层递归依赖关系,则可采用多层递归填补法。本实施例中,通过将衍生字段和标记字段进行区分,再分批进行处理,避免因总的缺项个数过多,时间和空间单价增大。

在一实施例中,所述若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法的步骤,包括:

步骤S5a,根据预设分类算法对所述第一数据中的字段进行分组,得到若干字段组;

步骤S5b,计算各个所述字段组的第三缺项个数;

步骤S5c,若所述第三缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述第一字段的缺项进行填补;若所述第三缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述第一数据的缺项进行填补。

本实施例中,可使用预设分类算法对缺项字段进行分类,具体的,可根据具体的第一数据训练对应的分类模型,从而对第一数据的字段进行分类,得到多个字段组。再计算每个字段组的第三缺项个数,根据第三缺项个数确定对应的填补策略及进行填补。本实施例通过对字段进行分组,再根据每个字段组的第三缺项个数去确定填补策略,将较多的缺项个数分成多个组,使得每个字段组的第三缺项个数较少,可以最少程度触发彻底剔除第一数据的概率,最大程度保证第一数据完整性。

在一实施例中,所述计算所述第一数据的缺项个数的步骤S2之后,包括:

步骤S2A,获取所述第一数据中具有时间特性的缺项的第一字段;

步骤S2B,根据所述第一字段确定与其具有周期性质的第二字段;

步骤S2C,检测所述第二字段是否缺项;

步骤S2D,若所述第二字段不缺项,获取所述第一字段与所述第二字段之间的周期间隔;

步骤S2E,根据所述周期间隔和所述第二字段确定所述第一字段的数据值。

本实施例中,如上述步骤S2A所述,第一数据中包括很多时间特征的字段,如在销售第一数据中,销售时间、放款时间等。获取缺项的具有时间特性的第一字段,如在某销售第一数据中,销售时间缺项,则销售时间作为第一字段。

如上述步骤S4所述,在正常流程中,不同第一数据的销售时间与放款时间之间的时间间隔是在很小的时间范围波动,即销售时间与放款时间之间具有周期性质。但往往与第一字段具有周期性质的第二字段具有多个,第一字段与不同的第二字段之间的时间间隔是不同的。

如上述步骤S2B-S2E所述,第二字段可能同样存在缺项的状态,若缺项,则不能由第二字段得到第一字段的时间点,时间间隔是由多个真实的第一字段和第二字段之间计算均值得到。根据第二字段和对应的时间间隔,能够确定得到第一字段的数据值。

本实施例中,在贷款销售第一数据中,时间点字段使用以上算法填补的效果是较差的,因时间特性的字段具有较大的随机性和定制性,但往往在相同口径的统计周期中,其又是具有统计规律的,因此在实际操作中,需要按照业务统计周期根据该时间点字段计算出一个新的周期字段,使用周期字段代替时间点字段使用算法进行填补,填补完成后反推出时间点字段,就完成了时间点字段的填补。

在一实施例中,所述采用基于朴素贝叶斯的随机填补策略进行填补的步骤S3,包括:

步骤S31,获取若干第二数据;其中,所述第二数据的字段不缺项;

步骤S32,将所述第一数据的缺项的字段删除,并将删除后的第一数据和若干所述第二数据采用朴素贝叶斯法进行分组,得到若干数据分组;

步骤S33,在所述第一数据所在的数据分组中,采用公式

本实施例中,上述第二数据为完整数据,即第二数据中与第一数据中缺项的字段的相同字段的数据值是完整的。将第一数据中缺项的字段删除得到一个新的第一数据,再将新的第一数据与第二数据采用朴素贝叶斯法进行分组,得到多个数据分组,新的第一数据属于其中的某一个数据分组,再在该数据分组中采用

参见图2,本申请一实施例提供了一种数据缺项填补装置,包括:

第一获取单元10,用于获取第一数据,并检测所述第一数据是否缺项;

计算单元20,用于若缺项,计算所述第一数据的缺项个数;

第一填补单元30,用于若所述缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略进行填补;其中,所述N为正整数;

第二填补单元40,用于若所述缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补;其中,所述M大于所述N+1,所述M为正整数;

第三填补单元50,用于若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法。

在一实施例中,所述第三填补单元50,包括:

第一获取子单元,用于获取所述第一数据的标记字段;

第一检测子单元,用于检测所述标记字段是否缺项;

第一计算子单元,用于若所述标记字段缺项,计算所述标记字段中的第一缺项个数;

第一填补子单元,用于若所述第一缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述标记字段的缺项进行填补;若所述第一缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述标记字段的缺项进行填补。

在一实施例中,所述第三填补单元50,还包括:

第二检测子单元,用于检测所述标记字段是否存在衍生字段;

第三检测子单元,用于若存在所述衍生字段,检测所述衍生字段是否缺项;

第二计算子单元,用于若所述衍生字段缺项,计算所述衍生字段中的第二缺项个数;

第二填补子单元,用于若所述第二缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述衍生字段的缺项进行填补;若所述第二缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述衍生字段的缺项进行填补。

在一实施例中,所述第三填补单元50,包括:

分组子单元,用于根据预设分类算法对所述第一数据中的字段进行分组,得到若干字段组;

第三计算子单元,用于计算各个所述字段组的第三缺项个数;

第三填补子单元,用于若所述第三缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略对所述第一数据的缺项进行填补;若所述第三缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略对所述第一数据的缺项进行填补。

在一实施例中,所述数据缺项填补装置,还包括:

第二获取单元,获取所述第一数据中具有时间特性的缺项的第一字段;

第一确定单元,用于根据所述第一字段确定与其具有周期性质的第二字段;

检测单元,用于检测所述第二字段是否缺项;

第三获取单元,用于若所述第二字段不缺项,获取所述第一字段与所述第二字段之间的周期间隔;

第二确定单元,用于根据所述周期间隔和所述第二字段确定所述第一字段的数据值。

在一实施例中,所述第一填补单元30,包括:

第二获取子单元,用于获取若干第二数据;其中,所述第二数据的字段不缺项;

删除子单元,用于将所述第一数据的缺项的字段删除,并将删除后的第一数据和若干所述第二数据采用朴素贝叶斯法进行分组,得到若干数据分组;

第四计算子单元,用于在所述第一数据所在的数据分组中,采用公式

在本实施例中,上述各个单元、子单元的具体实现请参照上述方法实施例中所述,在此不再进行赘述。

参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和第一数据库。其中,该计算机设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括存储介质、内存储器。该存储介质存储有操作系统、计算机程序和第一数据库。该内存储器为存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的第一数据库用于存储第一数据、第二数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种数据缺项填补方法。

本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定。

本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种数据缺项填补方法。

综上所述,为本申请实施例中提供的数据缺项填补方法、装置、计算机设备和存储介质,获取第一数据,并检测所述第一数据是否缺项;若缺项,计算所述第一数据的缺项个数;若所述缺项个数属于第一预设范围[1,N],采用基于朴素贝叶斯的随机填补策略进行填补;其中,所述N为正整数;若所述缺项个数属于第二预设范围[N+1,M],采用基于KNN的加权均值填补策略进行填补;其中,所述M大于所述N+1,所述M为正整数;若所述缺项个数属于第三预设范围[M+1,+∞),根据预设规则确定填补方法。通过本申请提供的数据缺项填补方法、装置、计算机设备和存储介质,能够根据缺项个数去确定对应的填补策略,不同缺项个数对应不同的填补策略,合理利用不同填补策略的优势,能够更加准确的对第一数据进行填补,同时能够采用更少的时间成本和空间成本对第一数据进行填补。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、第一数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。

以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本申请的专利保护范围内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号