一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于时间序列数据集的多分类排序方法与流程

2022-02-25 22:22:58 来源:中国专利 TAG:


1.本发明属于计算机软件技术领域,尤其涉及一种基于时间序列数据集的多分类排序方法。


背景技术:

2.排序是将杂乱无章的数据元素,通过一定的方法按关键字顺序排列。排序是计算机内经常进行的一种操作,其目的是将一组“无序”的记录序列调整为“有序”的记录序列,是计算机应用领域中非常重要、研究和应用都非常广泛的一类问题。例如,在数据处理、数据库、数据压缩、分布式计算、图像处理和计算机图形学中排序算法都有着非常广泛的应用。同时排序算法也是非常多的,在各个领域都有相关算法,也有成熟的应用,但在时间序列数据上,传统多排序算法应用效果往往不是很好。
3.在机载航电系统中的时间序列数据流是最为典型的数据,传感器每时每刻都在不断地产生流式数据,在短时间内有大量的数据以非常快的速度连续到达,数据量往往可能是无限大的,航电系统没有条件保存整个数据,这些数据随时间动态变化,机载软件需要实时更新数据,同时需要将数据通过重要程度、距离远近、目标属性等进行排序。在排完序的数据集中,当来一个新的数据集,需要将最早的数据进行剔除,新的数据集插入到已排序的数据集中。
4.虽然排序方法已相对成熟,但是在航电系统中基于时间序列的多分类排序方法是没有的。


技术实现要素:

5.本发明针对航电系统中数据流目标进行快速删除,插入和排序,节约内存开销,节省了时间消耗。
6.本发明提供了一种基于时间序列数据集的多分类排序方法,所述方法包括:
7.建立位置映射表、时间映射表;
8.基于所述位置映射表和所述时间映射表,将第一数据插入子数据集;其中,所述子数据集是根据所述第一数据的属性建立的;
9.基于所述第一数据的属性对所述子数据集内的数据进行排序,并基于排序数据的序列更新所述位置映射表和时间映射表。
10.优选地,所述方法还包括:
11.在数据库已满的情况下,输入第二数据,基于所述位置映射表删除第一数据中的子数据;其中,所述子数据是写入所述数据库时间最早的数据;
12.基于所述子数据集的大小和所述子数据的位置,确定所述数据库中剩余数据的移动方向;
13.基于所述移动方向移动所述剩余数据,得到目标位置,将所述第二数据插入所述目标位置。
14.优选地,所述目标位置是目标子数据集中的位置。
15.优选地,所述将所述第二数据插入所述目标位置之后,还包括:
16.基于所述目标子数据集的属性对所述目标子数据集内的数据进行排序,并基于排序数据的序列更新所述时间映射表和位置映射表。
17.优选地,所述建立位置映射表,包括:
18.基于所述第一数据与排序数据之间的位置关系建立位置映射表。
19.优选地,所述建立时间映射表,包括:
20.基于所述第一数据与排序数据之间的时间关系建立时间映射表。
21.优选地,所述第一数据的属性,用于对所述第一数据进行分类。
22.优选地,所述第一数据写入数据库的时间早于所述第二数据写入数据库的时间。
23.本发明的有益技术效果:
24.本发明提出一种基于时间序列的多分类方法,通过建议位置映射表、时间映射表可以很快的定位出时间最早的数据,并进行剔除,然后在已有分类排序基础上,进行插入和排序,减少了内存开销,缩短了排序时间,满足航电系统机载软件处理时间数据流多分类排序实时性。
附图说明
25.图1是本发明实施例提供的流程图。
具体实施方式
26.请参阅图1,实施例一,本发明提供了一种基于时间序列数据集的多分类排序方法,包括:
27.步骤101、建立位置映射表、时间映射表。
28.在本技术实施例中,基于第一数据与排序数据之间的位置关系建立位置映射表;基于第一数据与排序数据之间的时间关系建立时间映射表。
29.步骤102、基于位置映射表和时间映射表,将第一数据插入子数据集。
30.其中,子数据集是根据第一数据的属性建立的。
31.步骤103、基于第一数据的属性对子数据集内的数据进行排序,并基于排序数据的序列更新位置映射表和时间映射表。
32.其中,第一数据的属性,用于对第一数据进行分类。
33.步骤104、在数据库已满的情况下,输入第二数据,基于位置映射表删除第一数据中的子数据;
34.其中,子数据是写入数据库时间最早的数据;第一数据写入数据库的时间早于第二数据写入数据库的时间。
35.步骤105、基于子数据集的大小和子数据的位置,确定数据库中剩余数据的移动方向;基于移动方向移动剩余数据,得到目标位置,将第二数据插入所述目标位置。
36.步骤106、基于所述目标子数据集的属性对所述目标子数据集内的数据进行排序,并基于排序数据的序列更新所述时间映射表和位置映射表。
37.实施例二,本发明提出的一种基于时间序列数据集多分类排序方法,主要包含四
个模块:。
38.位置映射表
39.其中,航电系统没有条件保存所有的时间流数据,机载软件需要实时更新数据,将过多的数据根据时间进行剔除,并且排序,但是经过排序后,数据集的排序不是按照时间排序的,无法直接剔除最早的数据集,本发明通过建立一个通过建立位置映射表索引数据,在节约内存的同时,并且可以快速定位每个数据的时间属性。映射表所映射的值,为该数据集在排序后中序列的位置,当一个新的序列过来时,通过映射表将最早的数据剔除,更新映射表,更新数据集,这是一个正向删除的过程。
40.时间映射表
41.其中,为了能够将数据与位置映射表建立联系,快速更新,本发明同时记录数据集每个数据的时间顺序,由于需要剔除数据中最先到来的数据,通过位置映射表可以快速定位最先到来的数据集,但是随着数据排序时,需要更新位置映射表,通过建立时间映射表,可以直接定位到位置映射表所在位置,当数据排序位置发生变化时,更新数据集,其次更新时间映射表,然后更新位置映射表,这样就完成逆向更新。
42.子数据集大小统计记录表
43.其中,机载软件中的数据来源,是已知分类的数据源,在已知数据集分类和排序顺序的情况下,可以记录每个子分类的数据数量,当一个新的数据到来时,通过已知属性判断其哪一个类别,然后通过计算已知数据集的数量,将新数据集插入到其类别的首部,并同时更新位置映射表和时间映射表。
44.多分类排序
45.其中,本发明针对时间序列数据进行分类,采用映射表方法记录数据的时间和位置信息,能够快速定位到最早的数据,进行剔除,然后根据分类,快速插入新数据到已完成排序的数据中,再在其子分类下进行冒泡排序。
46.实施例三,假设数据集大小为10,假设有3个分类类别,分别是a,aa,aaa排列顺序,如表1。
47.表1
[0048][0049]
当新数据fff到来时,进行如下步骤:
[0050]
1.通过位置映射表,删除位置映射表最早的数据所在的位置,即6号位,更新子数
据类别个数2。
[0051]
2.计算fff类别起始位置,5 2=7,移动数据,判断数据移动方向。
[0052]
3.插入新数据fff到8的位置,更新时间映射表和位置映射表和子数据集大小。
[0053]
4.子分类中进行排序,更新位置映射表和时间映射表,得到表2。
[0054]
表2
[0055][0056]
本发明针对时间序列的数据集进行多分类排序,建立时间映射表和位置映射表,并且通过子类数据集个数快速插入到中新数据集,并且新数据只在其自己的分类中进行排序。本发明为时间序列数据集排序提供了一种方法,节约了内存开销,缩短了排序时间。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献