5 Q=0,V≠0,O≠0 错误 修正
6 Q≠0,V≠0,O=0 错误 修正
其中Q代表流量,O代表车流密度,V代表速度,当出现以上情况的数据时,则认为该数据为错误数据。
与判断数据缺失同样的方法,针对数据中存在数据错误的线圈数据进行判断。查询2011年3月18日下午13:15-13:45这半个小时上海南北高架东侧徐家汇上匝道路段断面NBXJH-DI-1每5分钟间隔的数据,如下表3.3所示。
表3.3 样本数据
2011年3月18日 流量Q 速度V 密度(%)O
13:15 178 13.65 44
13:20 209 12 31
13:25 207 10.50 36
13:30 170 7 29
13:35 185 0 45
13:40 208 0 41
13:45 192 11.53 37
上表中可以看出,该路段在13:35-13.40这段时间内,原始数据采集到的速度均等于0,然而流量跟密度的值均不等于0,符合Q≠0,V=0,O≠0的情况,此时可以认为该线圈采集的数据在该时间段内存在数据错误,需要进行修正。
3.2 数据整理方法
3.2.1 数据修复
针对错误数据以及失真数据用相同的方法就行修复。假如某路段R有3个断面分别为S1,S2,S3,若断面S2在t时刻存在数据缺失或数据失真,根据错误数据的特征,可以选择以下方法进行修复:
(1) 从空间特征上
A 用该缺失数据的断面所在的路段的相邻断面的值进行修补,即用t时刻下断面S1与S3的平均值进行修复。如上述样本数据中,表中列出了2011年3月18日上午9点到9点半这段时间内的上海南北高架东侧延东立交入口匝道至威海路上匝道路段断面NBDX10的存在数据缺失的时间。例如要对9:10的数据进行修复,应用此方法,首先查找与该断面在同一个路段的断面,通过数据库查找该路段共有两个断面,分别为NBDX10和NBDX11。从原始数据中查找出断面NBDX11在该时刻下的数据为如表3.4所示。
表3.4 样本数据
流量Q 速度V 密度O
9:10 497 55.41 12
从而可以用NBDX11断面的数据对NBDX10数据进行修复,流量Q(NBDX10)=Q(NBDX11)=497。以此类推将存在数据缺失的断面一一进行修补。
B 若是在t时刻下断面S1,S2,S3都出现数据缺失的情况,那么可以寻找路段R的前一个路段R-1与后一个路段R+1数据进行修复,其中对于存在一个路段存在多个断面线圈的情况,取流量值最大的断面的数据作为该路段的交通数据。
(2) 从时间特征上
A 存在数据缺失的断面在历史上该时刻下的趋势数据进行修复。对于S2断面,统计其在历史上每周同一天在t时刻下的历史趋势数据,用该历史趋势数据进行修复。
B 缺失的时刻的前后时间段内的平均值。若t时刻存在数据缺失,可以用该断面在t-1时刻,t+1时刻的平均值就行修复。
3.2.2 数据校验
经过上述方法进行数据修复之后,我们并不能够认为处理后的数据就是准确的,还不能拿来作为预测模型的输入。在原始数据的采集过程中可以发现经常会存在这样的数据,它们并是确实数据,也不是前面提到的错误数据,而是表现为数据失真,对于失真数据我们通常采用数据校验的方式进行检查修复。在错误数据修复的基础上,需要对数据的一致性与合理性进行校验,校验的对象分为单个路段断面,以及将路段置于整个路段全网。本文提出了一下几种数据校验方式: C#交通数据采集及整理方法的设计与实现(9):http://www.youerw.com/jisuanji/lunwen_274.html