时间序列数据的补全方法、装置及电子设备制造方法及图纸

技术编号:20566597 阅读:24 留言:0更新日期:2019-03-14 09:25
本发明专利技术公开了一种时间序列数据的补全方法、装置及电子设备,该方法包括:将采集的数据按照设定格式构建数据集,所述数据集至少包含一个系列的数据;将每个系列需补全的时间点插入所述数据集中;将插入时间点的数据集按照系列进行重新分区,将同一个系列的数据放入同一个分区内;对分区内的数据进行排序得到数据列表;分别对分区内的数据进行遍历,补全数据。本方法在分布式的计算框架下,对缺失的时间序列数据进行向前补全或者是向后补全,在进行数据补全的时候只需要少量的变量经过一次遍历就可以完成数据补全。

Completion Method, Device and Electronic Equipment of Time Series Data

The invention discloses a method, device and electronic equipment for completing time series data. The method includes: constructing data sets according to a set format, the data sets contain at least one series of data; inserting the time points of each series to be completed into the data sets; re-partitioning the data sets of inserting time points according to the series, and re-dividing the data sets of inserting time points into the same system. The column data is put into the same partition; the data in the partition is sorted to get the data list; the data in the partition is traversed to complete the data. In the framework of distributed computing, this method completes the missing time series data forward or backward. When completing the data, only a small number of variables need to be traversed once to complete the data completion.

【技术实现步骤摘要】
时间序列数据的补全方法、装置及电子设备
本专利技术涉及计算机
,更具体地,涉及一种时间序列数据的补全方法、装置及电子设备。
技术介绍
随着计算机科学技术、互联网技术以及物联网技术的迅猛发展,出现信息量爆增的现象,从中找到有用信息的难度也日益增大,而在一台服务器中处理所有需要的数据也变得越来越困难,分布式计算框架的出现恰好解决了这个问题,使得数据可以分布不同的服务器中,并行的进行处理,如此解决了单台服务器的性能瓶颈。时间序列是指将同一指标的数值按其发生的时间先后顺序排列而成的数列,其大量存在于人类社会和自然界中,例如金融数据时间序列、交通时间序列以及物联网中传感器数据时间序列等。时间序列相似性能够寻找同类领域诸多相似的时间序列,从而为物理现象和社会现象的分析提供极有利的数据。目前的时间序列相似性方法主要针对没有缺失数据的情况,但是在实际场景的应用中,无法确保每个时刻都有数据。例如,在物联网的应用中,可能会存在多个设备,而每个设备的采样时间不能确保完全相同,如果以其中一个设备的采样时间为基准来分析其他设备,会导致时间序列有大量的缺失值。
技术实现思路
有鉴于此,本专利技术提出了一种时间序列数据的补全方法、装置及电子设备,以解决上述问题。第一方面,本专利技术实施例提供了一种时间序列数据的补全方法,该方法包括:将采集的数据按照设定的格式构建数据集,且这个数据集中至少包括一个系列数据;将每个系列需补全的时间点插入到这个数据集中;将插入时间点的数据集按照系列进行重新分区,将同一个系列的数据放入同一个分区内;对各分区内的数据进行排序得到数据列表;分别对分区内的数据进行遍历,补全数据。第二方面,本专利技术实施例提供了一种基于时间序列的缺失数据补全方法的装置,该装置包括构建模块、插入模块、分区模块、排序模块及遍历模块。其中构建模块,用于将采集的数据按照设定格式构建数据集,所述数据集中至少包括一个系列的数据。插入模块,用于将每个系列需补全的时间点插入所述数据集中。分区模块,用于将插入时间点数据集按照系列进行重新分区,将同一个系列的数据放入同一个分区内。排序模块,用于对分区内的数据进行排序得到数据列表。遍历模块,用于分别对分区内的数据进行遍历,补全数据。第三方面,本专利技术实施例提供了一种电子设备,该电子设备包括:一个或多个处理器;存储器,用于存储一个或多个程序;一个或多个应用程序。其中所述一个或多个应用程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行本申请任意实施例提供的时间序列数据的补全的方法。第四方面,本专利技术实施例提供了一种计算机可读取存储介质,计算机可读存储介质中存储有程序代码,所述程序代码可被处理器调用执行本申请任意实施例提供的时间序列数据的补全方法。相对于现有技术,本专利技术实施例提供的一种时间序列数据的补全方法、装置、电子设备及可读取存储介质,通过将采集的数据按照设定的格式构建数据集;将每个系列需补全的时间点插入到这个数据集中;将插入时间点的数据集按照系列进行重新分区,将同一个系列的数据放入同一个分区内;对各分区内的数据进行排序得到数据列表;分别对分区内的数据进行遍历,补全数据,这种方式下,人们通过遍历数据集,可快速有效的获取到分布式环境下所有需要补全的数据,同时在取得较好补全效果的时候,本方法的可解释性较强,背后的物理含义较为清晰,因此还可以在该方法的基础上进行较多的扩展。为使本申请实施例的上述目的、特征和优点能够更明显易懂,下文特举较佳实施例,并配合所附附图,做详细说明如下。附图说明为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。图1示出了本申请实施例提供的一种网络系统的示意图;图2示出了本申请一实施例提出的一种时间序列数据的补全方法的流程图;图3示出了本申请一实施例提出的对分区内的数据进行排序的流程图;图4示出了本申请另一实施例提出的一种时间序列数据的补全方法的流程图;图5示出了本申请另一实施例提出的对分区内的数据进行递归操作的流程图;图6示出了本申请再一实施例提出的一种时间序列数据的补全方法的流程图;图7示出了本申请再一实施例提出的对分区内的数据进行循环操作的流程图;图8示出了本申请实施例提出的一种时间序列数据的补全装置的结构框图;图9示出了本申请实施例提出的用于执行根据本申请实施例的时间序列数据的补全方法的电子设备的结构框图;图10示出了本申请实施例提出的用于保存或者携带实现根据本申请实施例的时间序列数据的补全方法的程序代码的存储单元。具体实施方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。为了便于详细说明本申请方案,下面先将结合附图对本申请所应用环境进行介绍。请参阅图1,为本申请实施例提供的一种网络系统10,该网络系统10包括:移动终端11、服务器12、ZigBee网关13、子设备14以及路由器15。其中,ZigBee网关13为基于ZigBee协议搭建,子设备14可以是预先加入ZigBee网关13中的设备;也可以是后续通过用户操作连接至ZigBee网关13中的设备。需要说明的是,本申请实施例中,ZigBee网关13和子设备14统称为ZigBee设备。子设备14用于采集时间序列数据,并将采集的时间序列数据通过ZigBee网关13和路由器15传输到服务器12上,服务器12根据接收到的时间序列数据构建数据集,并以一定的时间刻度为单位对需要补全的时间点进行相应的补全操作。目前时间序列补全方法多数是在单机环境下进行,没有专门针对分布式环境的时间序列补全方法。专利技术人在研究中发现如果将现有的时间序列补全方法用到分布式的计算框架下,虽然可以完成缺失值的补全,但是在分布式的计算框架下,数据分布在哪个服务器上是无法确定的,若想要补全所有系列的缺失数据,需要用过滤的方法取出每个系列或者以系列进行分组处理,如此需多次遍历数据集,会造成磁盘读写开销很大。另外,有一些复杂的算法需要经过多次迭代才能计算出结果,当数据量大时,这些复杂的算法不仅耗时而且需要大量计算资源。因此,专利技术人提出了本申请,可以在分布式的框架下对缺失的时间序列数据进行向前插值补全或者是向后插值补全。下面将结合附图具体描述本申请的各实施例。请参阅图2,本申请一实施例提出的一种时间序列数据的补全方法,该方法包括:步骤S110:将采集的数据按照设定格式构建数据集,所述数据集中至少包括一个系列的数据。以图1所示系统为例,子设备采集的数据为时间序列数据,时间序列数据是指不同时间长度,同一个体或多个统计指标组成的数据。这类数据强调不同时间长度,并且数据严格按照时间顺序排序,时间长度可以人为指定,如月、日、季度、年度甚至分秒等。由于时间序列数据存在先后顺序,而这种顺序前后相承,因此常用于于反映某一事物、现象的变化状态或程度。子设备将采集的时间序列数据传输给服务器,服务器将获取到的时间序本文档来自技高网...

【技术保护点】
1.一种时间序列数据的补全方法,其特征在于,包括:将采集的数据按照设定格式构建数据集,所述数据集中至少包括一个系列的数据;将每个系列需补全的时间点插入所述数据集中;将插入时间点的数据集按照系列进行重新分区,将同一个系列的数据放入同一个分区内;对分区内的数据进行排序得到数据列表;分别对分区内的数据进行遍历,补全数据。

【技术特征摘要】
1.一种时间序列数据的补全方法,其特征在于,包括:将采集的数据按照设定格式构建数据集,所述数据集中至少包括一个系列的数据;将每个系列需补全的时间点插入所述数据集中;将插入时间点的数据集按照系列进行重新分区,将同一个系列的数据放入同一个分区内;对分区内的数据进行排序得到数据列表;分别对分区内的数据进行遍历,补全数据。2.根据权利要求1所述的方法,其特征在于,所述设定格式包括系列名称、采样时间、属性名称以及属性值。3.根据权利要求2所述的方法,其特性在于,所述将每个系列需补全的时间点插入所述数据集中,包括:将每个系列需补全的时间点的系列名称设置为对应的系列名称、属性名称设置为预设名称、属性值设置为空;将设置好的时间点插入到所述数据集中。4.根据权利要求1所述的方法,其特征在于,所述对分区内的数据进行排序,包括:对分区内的数据按照系列名称进行升序或降序排序;对排序后的数据分别按照采样时间进行升序或降序排序。5.根据权利要求4所述的方法,其特征在于,所述对排序后的数据分别按照采样时间进行升序或降序排序,包括:按照采样时间进行升序排序时,如果同一系列、同一采样时间对应有多个属性名称,则将属性名称为预设名称的数据排在最后;按照采样时间进行降序排序时,如果同一系列、同一采样时间对应有多个属性名称,则将属性名称为预设名称的数据排在最前。6.根据权利要求1所述的方法,其特征在于,所述分别对分区内的数据进行遍历,补全数据,包括:分别对分区内的数据进行递归操作,补全数据;或者分别对分区内的数据进行循环操作,补全数据。7.根据权利要求6所述的方法,其特征在于,所述分别对分区内的数据进行递归操作,补全数据,包括:输入一个设定格式的键值对和一个设定格式的系列名称;对所述数据列表、设定格式的键值对以及设定格式的系列名称进行递归操作,补全数据。8.根据权利要求7所述的方法,其特征在于,所述对所述数据列表、设定格式的键值对以及设定格式的系列名称进行递归操作,补全数据,包括:判断所述数据列表是否为空,如果所述数据列表为空则返回结果集,如果所述数据列表不为空则取出所述数据列表的第一行数据;判断所述数据列表的第一行数据的系列名称和所述设定格式的系列名称是否相同,如果相同,则根据所述数据列表的第一行数据的属性名称和属性值更新所述设定格式的键值对,如果不相同,则清空所述设定格式的键值对,并根据所述数据列表的第一行数据的系列名称更新所述设定格式的系列名称,根据所述数据列表的第一行数据的属性名称和属性值更新所述设定格式的键值对;判断所述数据列表的第一行数据的属性名称是否等于所述预设名...

【专利技术属性】
技术研发人员:傅思颖游延筠夏天松柳林唐红
申请(专利权)人:深圳绿米联创科技有限公司
类型:发明
国别省市:广东,44

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

1