一种供水行业数据清洗方法与流程

文档序号:32745981发布日期:2022-12-30 22:09阅读:51来源:国知局
一种供水行业数据清洗方法与流程

1.本技术涉及计算机技术,具体涉及一种供水行业数据清洗方法。


背景技术:

2.在很多场景中需要收集供水行业数据,进行一些分析。收集到的供水行业数据表良莠不齐,需要进行清洗之后才可以使用。例如在供水行业现状分析场景中,需求部门会通过供水行业数据表,从各局点(例如,地市,县、乡等)手机供水行业数据。
3.目前常用的方法是由人工配置清洗规则,然后利用配置的清洗规则进行清洗。然而如此操作由于人工的介入,一方面,成本较高,另一方面,容易出错。


技术实现要素:

4.有鉴于此,本技术公开一种供水行业数据清洗方法,所述方法可以包括:获取历史供水数据表;对所述历史供水数据表中每一字段下的数据进行分析,得到所述历史供水数据表中每一字段对应的字段属性;基于每一所述字段与对应字段属性,生成数据清洗字典;利用所述数据清洗字典对待清洗供水数据表中的数据进行数据清洗。
5.在一些实施例中,所述字段属性包括所述字段对应数据的数据格式、数据长度、数据范围;所述对所述历史供水数据表中每一字段下的数据进行分析,得到所述历史供水数据表中每一字段对应的字段属性,包括:对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围。
6.在一些实施例中,所述对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围,包括:将第一字段对应的首个数据,作为所述第一字段的名称;所述第一字段为所述历史供水数据表中的任意字段;读取所述第一字段下包括的数据,确定所述第一字段对应数据的数据格式;响应于所述数据格式为文本格式,将各所述历史供水数据表中所述第一字段下的文本数据进行汇总集合作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长文本数据确定所述第一字段对应数据的数据长度;响应于所述数据格式为字符串格式,将各所述历史供水数据表中所述第一字段下的字符串数据进行汇总集合,作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长字符串数据确定所述第一字段对应数据的数据长度;响应于所述数据格式为数值格式,将各所述历史供水数据表中所述第一字段下的最小数值数据和最大数值数据形成的范围,作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长数值数据确定所述第一字段对应数据的数据长度。
7.在一些实施例中,所述字段属性包括针对所述字段对应数据的描述信息;所述描述信息用于指示针对所述字段的填写规则;所述对所述历史供水数据表中每一字段下的数据进行分析,得到所述历史供水数据表中每一字段对应的字段属性,包括:利用预先部署的图片截图插件,对所述历史供水数据表进行截图操作,得到与所述历史供水据表对应的表
截图;对所述表截图进行文字提取,得到所述表截图包含的若干文字组合;针对每一文字组合,将所述文字组合内的文字与预设文字库中的文字进行比较,将包含预设文字库中文字的目标文字组合,作为针对第二字段对应数据的描述信息;所述预设文字库中包含基于若干描述信息样本提取的描述信息关键字;所述第二字段为所述历史供水数据表中的任意字段;将与所述目标文字组合在竖直方向距离为预设距离的文字组合作为所述第二字段的名称。
8.在一些实施例中,所述对所述表截图进行文字提取,得到所述表截图包含的若干文字组合,包括:针对所述表截图包含的每一像素点,以所述像素点作为预设框的中心,利用所述预设框得到与所述像素点对应的锚框;利用预先训练的文本图像识别模型对每一所述锚框围成的锚框图像进行分类,得到包含文本的文本锚框图像;利用ocr技术对每一文本锚框图像进行文字识别,得到每一文本锚框图像包含的文本作为文字组合。
9.在一些实施例中,所述将与所述目标文字组合在竖直方向距离为预设距离的文字组合作为所述第二字段的名称,包括:将与所述目标文字组合对应的目标锚框图像的中心像素点为起点,延竖直向上的方向移动所述预设距离,获取对应的目标像素点;将所述目标像素点所属的文本锚框图像包含的文字组合作为所述第二字段的名称。
10.在一些实施例中,所述基于每一所述字段与对应字段属性,生成数据清洗字典,包括:将所述第一字段作为所述数据清洗字典中的第三字段,并将所述第一字段的名称作为所述第三字段的名称;将所述第一字段对应数据的数据格式、数据长度、数据范围,作为所述第三字段对应数据的数据格式、数据长度、数据范围;针对每一所述第三字段,在所述第二字段中,确定与所述第三字段名称相同的目标第二字段,以及将所述目标第二字段对应的描述信息,确定为所述第三字段的描述信息。
11.在一些实施例中,所述利用所述数据清洗字典对待清洗供水数据表中的数据进行数据清洗,包括:针对所述待清洗供水数据表中的每一目标字段,根据所述目标字段的首个数据确定所述目标字段的目标字段名,从所述数据清洗字典中查找与所述目标字段名匹配的目标第三字段,利用所述目标第三字段对应的字段属性包括的数据格式、数据长度、数据范围,确定所述目标字段下的脏数据,以及确定所述目标字段下的缺失数据。
12.在一些实施例中,在确定所述脏数据和所述缺失数据之后,所述方法还包括:将所述目标字段下的缺失数据和所述脏数据分别对应的数据位置,所述目标字段的字段名以及所述目标第三字段对应的字段属性包含的描述信息,输出至所述待清洗供水数据表提供方,以由所述提供方基于输出的信息进行所述缺失数据和所述脏数据的修改。
13.在一些实施例中,响应于接收到所述提供方针对所述缺失数据和所述脏数据的修改,所述方法还包括:将修改后的数据按照对应的数据位置写入所述待清洗供水数据表,完成数据清洗。
14.基于前述任意实施例记载的技术方案,可以对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围从历史供水数据表中分析出各字段的字段属性,然后总结为数据清洗字典,然后依据该数据清洗字典完成数据清洗,与相关技术相比,无需人工指定清洗规则,降低清洗成本并且提升清洗正确性。
附图说明
15.下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍。
16.图1为本技术实施例示出的一种供水行业数据清洗方法的方法流程示意图;
17.图2为本技术实施例示出的一种确定字段属性的方法的流程示意图;
18.图3为本技术实施例示出的一种抽取描述信息的方法流程示意图;
19.图4本技术实施例示出的一种提取文字组合的方法流程示意图;
20.图5为本技术实施例示出的确定字段名称的方法流程示意图;
21.图6为本技术实施例示出的一种生成数据清洗字典的方法流程示意图;
22.图7为本技术实施例示出的一种清洗方法流程示意图;
23.图8为本技术实施例示出的一种供水行业数据清洗装置的结构示意图;
24.图9为本技术实施例示出的一种电子设备的硬件结构示意图。
具体实施方式
25.下面将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的设备和方法的例子。
26.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在可以包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。还应当理解,本文中所使用的词语“如果”,取决于语境,可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
27.本技术提出一种供水行业数据清洗方法,通过从历史供水数据表中分析出各字段的字段属性总结为数据清洗字典,然后依据该数据清洗字典完成数据清洗,与相关技术相比,无需人工指定清洗规则,降低清洗成本并且提升清洗正确性。
28.请参见图1,图1为本技术实施例示出的一种供水行业数据清洗方法的方法流程示意图。
29.图1示出的供水行业数据清洗方法可以应用于电子设备中。其中,所述电子设备可以通过搭载与供水行业数据清洗方法对应的软件逻辑执行该方法。所述电子设备的类型可以是笔记本电脑,计算机,服务器,手机,掌上电脑(personal digital assistant,pda)等。在本技术中不特别限定所述电子设备的类型。所述电子设备也可以是客户端设备或服务端设备。
30.如图1所示,所述方法可以包括:
31.s102,获取历史供水数据表。
32.在大数据行业兴起之前,收集供水数据采用的是比较原始的方法。即需求部门创建好供水行业数据表(例如,excel表格)然后发送给局点,由局点填写完成再返回给需求部门。
33.需求部门在利用数据进行分析的时候会先对供水数据表中的数据进行人工校验(比如确定表格填写是否正确,类似现在的数据清洗,不过是人工处理),校验通过后才进行
分析使用。
34.所述历史供水数据表即是这些人工校验通过的数据表。这些数据表通常存储在需求部门本地或服务端。
35.本步骤可以从需求部门本地或服务端获取所述历史供水数据表。
36.在一些实施例中,所述供水数据表可以包括scada(supervisory control and data acquisition,监控系统与数据采集)数据。scada数据可以分为两类:
37.(1)瞬时数据,如:水质、水压、水位等数据,缺失数据需基于海量的历史数据,清洗异常数据后,按修正分布规律进行缺失数据的补入。
38.(2)累计数据,如:水量、电流、药剂量等数据,与瞬时量不同的是累积量缺失前后的数据决定了该段数据的总和,以此为基数按修正分布规律进行缺失数据的补入。
39.以供水厂站为例,每一个厂站点位的scada数据可以包括:点位名称、点位数据类型、数据单位、监测实际值、监测时间。
40.s104,对所述历史供水数据表中每一字段下的数据进行分析,得到所述历史供水数据表中每一字段对应的字段属性。
41.这些历史供水数据表(以下简称数据表)都是经过校验的,数据较为可靠。利用以下分析方法可以针对这些数据表内每一字段的数据进行统计分析,得到每一字段对应的字段属性。
42.所述字段属性可以包括所述字段对应数据的数据格式、数据长度、数据范围。这些字段属性可以作为从历史数据表中针对字段总结出来的合理数据的数据规则,可以用于后续数据清洗。
43.所述分析方法可以在后续实施例中会有相应介绍。
44.s106,基于每一所述字段与对应字段属性,生成数据清洗字典。
45.在s104得到字段属性之后,将各字段与对应字段属性进行组合,即可得到具备数据清洗能力的数据清洗字典。
46.s108,利用所述数据清洗字典对待清洗供水数据表中的数据进行数据清洗。
47.本步骤中,可以与数据清洗字典包括的一些字段与对应字段属性,对所述待清洗供水数据表中字段的数据进行筛选,得到不满足所述字段属性的脏数据。
48.基于对脏数据的处理原则,例如删除整行数据或人工修改等,完成脏数据处理,从而完成数据清洗。
49.基于s102-s108记载的技术方案,可以对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围从历史供水数据表中分析出各字段的字段属性,然后总结为数据清洗字典,然后依据该数据清洗字典完成数据清洗,与相关技术相比,无需人工指定清洗规则,降低清洗成本并且提升清洗正确性。
50.在一些实施例中,所述字段属性包括所述字段对应数据的数据格式、数据长度、数据范围。在s104中,可以对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围。
51.所述数据格式一般是指文本格式,字符串格式,数值格式。通过获取字段下的数据并简单分析即可确定数据格式。例如,可以通过一些函数进行数据格式的分析,确定数据格式。
52.数据长度和数据范围可以通过对字段下的数据进行分析得到。
53.在一些实施例中,可以根据不同的数据格式采用不同的分析逻辑得到字段属性。
54.请参见图2,图2为本技术实施例示出的一种确定字段属性的方法的流程示意图。图2为对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围步骤的解释说明。如图2所示,所述方法包括s202-s210。
55.s202,将第一字段对应的首个数据,作为所述第一字段的名称。
56.所述第一字段为所述历史供水数据表中的任意字段。本技术采用第一字段、第二字段、第三字段对不同实施例或步骤中的字段进行区分,这些字段可以是历史数据表中的任意字段。
57.历史数据表中的表头即第一行的数据通常为字段名称,便于数据填写人员完成数据填写。
58.本步骤可以让确定字段属性的设备通过获取第一字段的首个数据即可确定第一字段的名称。
59.s204,读取所述第一字段下包括的数据,确定所述第一字段对应数据的数据格式。
60.本步骤中可以采用读取数据的指令进行数据读取,从而确定第一字段下数据的数据格式。所采用的指令可以参照相关技术在此不做详述。
61.s206,响应于所述数据格式为文本格式,将各所述历史供水数据表中所述第一字段下的文本数据进行汇总集合作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长文本数据确定所述第一字段对应数据的数据长度。
62.针对文本格式的数据,本技术中采用的汇总集合的分析方式,将不同历史数据表中第一字段下的数据进行去重汇总,形成汇总集合。由于历史数据表都是经过人工校验的,字段下的数据均为合理数据,由此即可得到存储了允许数据范围的汇总集合。
63.举例来说,假设第一字段为地市数据,所述汇总集合存储了允许的地市数据范围。假设第一字段为部门数据,所述汇总集合存储了允许的部门数据。
64.从不同历史数据表中第一字段中还可以获取最长文本数据,依据该最长文本数据占用的存储空间大小既可以确定第一字段最大的数据长度,该数据长度可以作为第一字段被允许的数据长度,第一字段下的数据会以该数据长度进行存储,在数据清洗中的,若在第一字段下存在非该数据长度的数据,则为脏数据。
65.s208,响应于所述数据格式为字符串格式,将各所述历史供水数据表中所述第一字段下的字符串数据进行汇总集合,作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长字符串数据确定所述第一字段对应数据的数据长度。
66.字符串格式的数据范围和数据长度的确定可以参照文本格式的确定方法,在此不做详述。
67.s210,响应于所述数据格式为数值格式,将各所述历史供水数据表中所述第一字段下的最小数值数据和最大数值数据形成的范围,作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长数值数据确定所述第一字段对应数据的数据长度。
68.数值格式的数据有其特殊性,根据不同历史数据表第一字段下的最小数值和最大
数值即可确定数据范围。其数据长度确定范围可以参照文本格式,在此不做详述。
69.通过s202-s210即可依据不同类型的字段分别确定字段属性。
70.在历史数据表的表头(字段名称)下方一行会对相应字段进行描述的描述信息,说明应字段的填写规则。比如,对应字段的数据格式、数据范围,填写内容示例等。如果可以把这些信息抽取出来则可以得到对字段更细的描述信息,比如可以辅助进行脏数据与缺失数据的处理。
71.以下介绍本技术示意的一种抽取描述信息的方法。抽取描述信息比较重要的是将字段与提取出的描述信息相对应,本技术可以利用字段名称和描述信息在历史数据表中的位置关系,将提取的描述信息与字段相对应。
72.请参见图3,图3为本技术实施例示出的一种抽取描述信息的方法流程示意图。如图3所示,该抽取方法可以包括:
73.s302,利用预先部署的图片截图插件,对所述历史供水数据表进行截图操作,得到与所述历史供水据表对应的表截图。
74.历史数据表一般是表格形式,可以利用截图插件进行截图操作,将表格转换为图像,即表截图。
75.s304,对所述表截图进行文字提取,得到所述表截图包含的若干文字组合。
76.在一些实施例中,可以利用预先训练的文字识别模型,例如crnn、ocr模型等,识别表截图中的文字组合。
77.比如可以获取一些标记了文本内容的图像样本,对所述文字识别模型进行有监督训练,使得所述文字识别模型具备识别文字的能力。然后可以利用所述文字识别模型进行文字识别。
78.s306,针对每一文字组合,将所述文字组合内的文字与预设文字库中的文字进行比较,将包含预设文字库中文字的目标文字组合,作为针对第二字段对应数据的描述信息。
79.所述第二字段为所述历史供水数据表中的任意字段。
80.所述预设文字库中包含基于若干描述信息样本提取的描述信息关键字。在一些实施例中,可以预先基于若干描述信息样本,从中提取以下描述信息关键字,例如,规则,示例,范围,格式等等,将这些关键字组成预设文字库。通过将提取的文字组合与预设文字库中的文字匹配,若匹配中则说明提取的文字组合为描述信息。
81.s308,将与所述目标文字组合在竖直方向距离为预设距离的文字组合作为所述第二字段的名称。
82.所述预设距离为经验值,可以根据需求进行设定。
83.所述文字识别模型除了输出文字组合之外还可以输出文字组合的位置信息,通过以所述目标文字组合为基础,在竖直方向上移动预设距离得到的文字组合即为该描述信息所描述的字段,得到的文字组合即可作为所述第二字段的名称,由此完成了描述信息与字段的对应。
84.在一些实施例中,为了提升文字识别的准确,并且便于进行描述信息与字段的对应,在s304中可以先对表截图进行图像拆分,得到若干包含文字的小图,然后对小图内容进行识别,得到若干文字组合,根据小图的位置信息即可确定文字组合的位置信息,进而方便识别字段名称与描述信息,完成对应。
85.请参见图4,图4本技术实施例示出的一种提取文字组合的方法流程示意图。图4为对步骤s304的补充说明。如图4所示,所述方法可以包括s402-s406。
86.s402,针对所述表截图包含的每一像素点,以所述像素点作为预设框的中心,利用所述预设框得到与所述像素点对应的锚框。
87.所述预设框可以根据需求进行设定,可以预先设定所述预设框的尺寸大小。
88.本步骤中,可以针对表截图中的每一像素点,将所述像素点分别作为所述预设框的中心,然后根据所述预设框的尺寸大小,得到与每一像素点对应的锚框。锚框在表截图中围成的区域即为小图区域。
89.s404,利用预先训练的文本图像识别模型对每一所述锚框围成的锚框图像进行分类,得到包含文本的文本锚框图像。
90.本步骤中可以利用以下标记了图像是否为文本图像的训练样本,对文本图像识别模型(分类模型)进行有监督训练,使得该模型具备识别文本图像的能力。
91.然后利用该文本图像识别模型对每一小图进行分类,确定小图是否包含文本内容,如果是,则将小图确定为文本锚框图像。其中每一文本锚框图像的位置信息可以通过文本锚框图像的中心像素点的坐标进行表示。
92.s406,利用ocr技术对每一文本锚框图像进行文字识别,得到每一文本锚框图像包含的文本作为文字组合。
93.ocr(optical character recognition,光学字符识别)技术,是指识别图像中文本内容的技术。关于ocr技术的介绍可以参照相关技术。本步骤可以利用ocr完成文本锚框图像内文本的识别,得到若干文字组合。
94.通过s402-s406,可以针对小图进行文字识别精度更高,文字识别效果更好,并且,通过切分小图,可以通过小图的中心点坐标得到文字组合的位置信息,便于进行后续描述信息与字段的对应。
95.在一些实施例中,在基于s402-s406得到若干文字组合,且通过s306识别出其中的目标文字组合,即描述信息后,可以基于图5示意的方法进行描述信息与字段的对应。
96.请参见图5,图5为本技术实施例示出的确定字段名称的方法流程示意图。图5为对s308的进一步说明。如图5所示,确定字段名称的方法包括s502-s504。
97.s502,将与所述目标文字组合对应的目标锚框图像的中心像素点为起点,延竖直向上的方向移动所述预设距离,获取对应的目标像素点。
98.本步骤中国,可以将目标文字组合对应的目标锚框图像的中心像素点作为起点,延竖直向上的方向移动所述预设距离,获取对应的目标像素点。该目标像素点即为第二字段名称对应的小图内的像素点。
99.s504,将所述目标像素点所属的文本锚框图像包含的文字组合作为所述第二字段的名称。
100.本步骤中,可以基于所述目标像素点的坐标值,与每一文本锚框图像的中心点的坐标进行距离计算,如果所述目标像素点距离某一中心点的距离小于预设阈值,即说明目标像素点属于该中心点对应的文本锚框图像,该文本锚框图像内包含的文本即为第二字段的名称。
101.通过s502-s504可以完成的描述信息和字段的对应。
102.在一些实施例中,得到字段和字段属性后,可以生成数据清洗字典。
103.请参见图6,图6为本技术实施例示出的一种生成数据清洗字典的方法流程示意图。如图6所示,所述方法可以包括s602-s606。
104.s602,将所述第一字段作为所述数据清洗字典中的第三字段,并将所述第一字段的名称作为所述第三字段的名称。
105.本步骤即在数据清洗字典中创建与第一字段对应的字段。
106.s604,将所述第一字段对应数据的数据格式、数据长度、数据范围,作为所述第三字段对应数据的数据格式、数据长度、数据范围。
107.可以将第一字段对应的字段属性写入数据清洗字典。
108.s606,针对每一所述第三字段,在所述第二字段中,确定与所述第三字段名称相同的目标第二字段,以及将所述目标第二字段对应的描述信息,确定为所述第三字段的描述信息。
109.本步骤中,可以在第二字段中,找到与第一字段相同的字段,并将找到的字段对应的描述信息作为第一字段的描述信息,从而在字典中完成第一字段信息的录入。针对每一第一字段完成s602-s606之后则完成数据清洗字典的生成。本技术不限定以何种方式存储该字典。
110.在一些实施例中,可以利用数据清洗字典完成数据清洗。
111.请参见图7,图7为本技术实施例示出的一种清洗方法流程示意图。图7示意的方法为对s108的解释说明。如图7所示,所述清洗方法包括s702-s704。
112.s702,针对所述待清洗供水数据表中的每一目标字段,根据所述目标字段的首个数据确定所述目标字段的目标字段名。
113.所述目标字段是指所述待清洗供水数据表中需要进行清洗的字段。这些目标字段可以预先被指定。
114.待清洗供水数据表的表头为目标字段的字段名。根据所述目标字段的首个数据即可确定所述目标字段的目标字段名。
115.s704,从所述数据清洗字典中查找与所述目标字段名匹配的目标第三字段,利用所述目标第三字段对应的字段属性包括的数据格式、数据长度、数据范围,确定所述目标字段下的脏数据,以及确定所述目标字段下的缺失数据。
116.本步骤中可以遍历目标字段下的每一数据,并将不满足字段属性包括的数据格式、数据长度、数据范围的数据确定为脏数据,将空白的数据确定为缺失数据。
117.得到脏数据与缺失数据之后,相关技术中通常为采用删除整行或者根据上下文进行补充修改的方式,如此操作可以提升数据完整性,但是数据仍旧不是真实的,会对分析结果造成影响。本技术可以将确定的脏数据和缺失数据以及对应的描述信息输出给表格提供方以辅助其进行修改,从而得到更真实的数据,提升分析结果准确性。
118.在一些实施例中,可以将所述目标字段下的缺失数据和所述脏数据分别对应的数据位置,所述目标字段的字段名以及所述目标第三字段对应的字段属性包含的描述信息,输出至所述待清洗供水数据表提供方,以由所述提供方基于输出的信息进行所述缺失数据和所述脏数据的修改。
119.所述数据位置可以指示缺失数据、脏数据对应在表格中的位置。将所述数据位置,
目标字段的字段名,以及目标字段的描述信息,生成一条提示信息,发送所述待清洗供水数据表提供方。该提供方可以依据提示信息中提供的窗口,完成所述缺失数据和所述脏数据的修改。
120.在一些实施例中,响应于接收到所述提供方针对所述缺失数据和所述脏数据的修改,还可以将修改后的数据按照对应的数据位置写入所述待清洗供水数据表,完成数据清洗。
121.比如可以在接收到提供方在所述窗口输入的修改信息之后,可以根据所述缺失数据和所述脏数据的数据位置信息,确定被修改数据在表格所处的位置,然后将提供方修改的数据填入相应位置,
122.与所述任一实施例相对应的,本技术还提出一种供水行业数据清洗装置。
123.请参见图8,图8为本技术实施例示出的一种供水行业数据清洗装置的结构示意图。如图所示,所示供水行业数据清洗装置800可以包括:
124.获取模块810,获取历史供水数据表;
125.分析模块820,对所述历史供水数据表中每一字段下的数据进行分析,得到所述历史供水数据表中每一字段对应的字段属性;
126.生成模块830,基于每一所述字段与对应字段属性,生成数据清洗字典;
127.清洗模块840,利用所述数据清洗字典对待清洗供水数据表中的数据进行数据清洗。
128.在一些实施例中,所述字段属性包括所述字段对应数据的数据格式、数据长度、数据范围;所述分析模块820,进一步:
129.对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围。
130.在一些实施例中,所述分析模块820,进一步:
131.将第一字段对应的首个数据,作为所述第一字段的名称;所述第一字段为所述历史供水数据表中的任意字段;
132.读取所述第一字段下包括的数据,确定所述第一字段对应数据的数据格式;
133.响应于所述数据格式为文本格式,将各所述历史供水数据表中所述第一字段下的文本数据进行汇总集合作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长文本数据确定所述第一字段对应数据的数据长度;
134.响应于所述数据格式为字符串格式,将各所述历史供水数据表中所述第一字段下的字符串数据进行汇总集合,作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长字符串数据确定所述第一字段对应数据的数据长度;
135.响应于所述数据格式为数值格式,将各所述历史供水数据表中所述第一字段下的最小数值数据和最大数值数据形成的范围,作为所述第一字段对应数据的数据范围,以及根据各所述历史供水数据表中所述第一字段下的最长数值数据确定所述第一字段对应数据的数据长度。
136.在一些实施例中,所述字段属性包括针对所述字段对应数据的描述信息;所述描述信息用于指示针对所述字段的填写规则;所述分析模块820,进一步:
137.利用预先部署的图片截图插件,对所述历史供水数据表进行截图操作,得到与所述历史供水据表对应的表截图;
138.对所述表截图进行文字提取,得到所述表截图包含的若干文字组合;
139.针对每一文字组合,将所述文字组合内的文字与预设文字库中的文字进行比较,将包含预设文字库中文字的目标文字组合,作为针对第二字段对应数据的描述信息;所述预设文字库中包含基于若干描述信息样本提取的描述信息关键字;所述第二字段为所述历史供水数据表中的任意字段;
140.将与所述目标文字组合在竖直方向距离为预设距离的文字组合作为所述第二字段的名称。
141.在一些实施例中,所述分析模块820,进一步:
142.针对所述表截图包含的每一像素点,以所述像素点作为预设框的中心,利用所述预设框得到与所述像素点对应的锚框;
143.利用预先训练的文本图像识别模型对每一所述锚框围成的锚框图像进行分类,得到包含文本的文本锚框图像;
144.利用ocr技术对每一文本锚框图像进行文字识别,得到每一文本锚框图像包含的文本作为文字组合。
145.在一些实施例中,所述分析模块820,进一步:
146.将与所述目标文字组合对应的目标锚框图像的中心像素点为起点,延竖直向上的方向移动所述预设距离,获取对应的目标像素点;
147.将所述目标像素点所属的文本锚框图像包含的文字组合作为所述第二字段的名称。
148.在一些实施例中,所述生成模块830,进一步:
149.将所述第一字段作为所述数据清洗字典中的第三字段,并将所述第一字段的名称作为所述第三字段的名称;
150.将所述第一字段对应数据的数据格式、数据长度、数据范围,作为所述第三字段对应数据的数据格式、数据长度、数据范围;
151.针对每一所述第三字段,在所述第二字段中,确定与所述第三字段名称相同的目标第二字段,以及将所述目标第二字段对应的描述信息,确定为所述第三字段的描述信息。
152.在一些实施例中,所述清洗模块840,进一步:
153.针对所述待清洗供水数据表中的每一目标字段,根据所述目标字段的首个数据确定所述目标字段的目标字段名,
154.从所述数据清洗字典中查找与所述目标字段名匹配的目标第三字段,利用所述目标第三字段对应的字段属性包括的数据格式、数据长度、数据范围,确定所述目标字段下的脏数据,以及确定所述目标字段下的缺失数据。
155.在一些实施例中,在确定所述脏数据和所述缺失数据之后,所述装置800还包括:
156.修改模块,将所述目标字段下的缺失数据和所述脏数据分别对应的数据位置,所述目标字段的字段名以及所述目标第三字段对应的字段属性包含的描述信息,输出至所述待清洗供水数据表提供方,以由所述提供方基于输出的信息进行所述缺失数据和所述脏数据的修改。
157.在一些实施例中,响应于接收到所述提供方针对所述缺失数据和所述脏数据的修改,所述装置800还包括:
158.写入模块,将修改后的数据按照对应的数据位置写入所述待清洗供水数据表,完成数据清洗。
159.基于前述技术方案,可以对每一所述字段下包括的数据进行分析,得到每一所述字段对应数据的数据格式、数据长度、数据范围从历史供水数据表中分析出各字段的字段属性,然后总结为数据清洗字典,然后依据该数据清洗字典完成数据清洗,与相关技术相比,无需人工指定清洗规则,降低清洗成本并且提升清洗正确性。
160.本技术示出的供水行业数据清洗装置的实施例可以应用于电子设备上。相应地,本技术公开了一种电子设备,该设备可以包括:处理器。
161.用于存储处理器可执行指令的存储器。
162.其中,所述处理器被配置为调用所述存储器中存储的可执行指令,实现前述任一实施例示出的供水行业数据清洗方法。
163.请参见图9,图9为本技术实施例示出的一种电子设备的硬件结构示意图。
164.如图9所示,该电子设备可以包括用于执行指令的处理器,用于进行网络连接的网络接口,用于为处理器存储运行数据的内存,以及用于存储供水行业数据清洗装置对应指令的非易失性存储器。
165.其中,所述装置的实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,除了图9所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。
166.可以理解的是,为了提升处理速度,所述供水行业数据清洗装置对应指令也可以直接存储于内存中,在此不作限定。
167.本技术提出一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可以用于使处理器执行前述任一实施例示出的供水行业数据清洗方法。
168.本领域技术人员应明白,本技术一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本技术一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本技术一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
169.本技术中的“和/或”表示至少具有两者中的其中一个。本技术中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据处理设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
170.虽然本技术包含许多具体实施细节,但是这些不应被解释为限制任何公开的范围或所要求保护的范围,而是主要用于描述特定公开的具体实施例的特征。本技术内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽
然特征可以如所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。
171.类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,所述实施例中的各种平台模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和平台通常可以一起集成在单个软件产品中,或者封装成多个软件产品。
172.以上仅为本技术一个或多个实施例的较佳实施例而已,并不用以限制本技术一个或多个实施例,凡在本技术一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术一个或多个实施例保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1