2. 时序数据基础与实验数据特征

时序实验数据对齐与比较的第一步,不是写代码,而是把数据本身“看清楚”。同一段实验,如果时间戳口径不一致、采样率不同、时区混用、缺失模式各异、噪声类型不同,后续无论用多复杂的对齐算法,都可能得到看似合理却错误的结论。本节围绕五个基础特征展开:时间戳、采样率、时区、缺失模式与噪声类型,并说明它们如何具体影响对齐与比较。

时间戳:对齐的锚点,也是最容易出错的地方

时间戳是时序数据对齐的唯一锚点。工程中常见的时间戳有三种口径:采集时刻(传感器或采集卡打点的时间)、写入时刻(数据落库时间)、处理时刻(算法输出时间)。三者可能相差几毫秒到几秒,若混用,对齐结果会出现系统性偏移。例如采集卡以 1 kHz 采样,但数据先进入缓冲区再批量写入数据库,写入时间戳会比真实采集时刻晚 200 ms 以上;若用写入时间戳做对齐,两路信号的相位关系就被整体平移。

另一个常见问题是时间戳精度与单调性。Unix 毫秒时间戳在 1 kHz 采样下每毫秒对应 1 个点,看似够用,但若两路数据分别用毫秒和微秒精度记录,合并时会出现“同一时刻多个点”或“点被压缩”的现象。此外,系统对时(NTP)跳变、夏令时切换、手动改时钟都会破坏单调性,导致时间轴出现回退或跳跃。实操中应先做时间戳体检:检查是否单调递增、相邻间隔的分布是否与标称采样率一致、是否存在重复时间戳。

采样率:决定比较的分辨率与重采样策略

采样率直接决定两路数据能否逐点比较。若两路采样率相同且时钟同源,逐点比较即可;若采样率不同,必须先重采样到统一时间栅格。这里有一个关键原则:重采样只能降低分辨率,不能凭空提高信息量。把 100 Hz 信号上采样到 1 kHz,只是插值出中间点,并不会恢复原始信号中不存在的高频成分。

因此,比较前应明确“以谁为基准”。通常做法是:以较低采样率为基准做降采样,或统一重采样到一个中间栅格。降采样前必须加抗混叠滤波,否则高频噪声会折叠进低频带,污染比较结果。例如将 1 kHz 的振动信号降到 100 Hz 与另一路 100 Hz 温度信号比较,若不做低通滤波,500 Hz 附近的机械噪声会混叠到 0~50 Hz 内,使温度与振动的相关性被虚假放大。下表给出一个示例性的重采样决策参考(参数为教学假设):

场景两路采样率建议策略注意事项
同源同步采集1 kHz / 1 kHz逐点比较先校验时间戳单调性
高低频混合1 kHz / 10 Hz高频降采样至 10 Hz降采样前加抗混叠低通
非整数倍关系500 Hz / 200 Hz统一重采样至 100 Hz用插值并记录重采样误差

时区:统一到绝对时间再比较

时区问题的本质是“本地时间”与“绝对时间”的混淆。带时区偏移的 ISO 8601 时间(如 2024-06-01T08:00:00+08:00)是绝对时间,可直接比较;而不带偏移的本地时间(如 2024-06-01 08:00:00)必须结合采集地点和时区规则才能还原为绝对时间。跨时区实验、跨国设备日志、夏令时切换期间的数据,最容易在此出错。

推荐做法是:入库时统一转换为 UTC 并保留原始时区标记,展示时再按需转换。夏令时切换当天会出现“同一本地时间对应两个绝对时刻”或“某本地时刻不存在”的情况,若用本地时间做键,可能造成数据覆盖或错位。比较两路数据前,先确认二者时间戳是否都带时区信息,再统一到同一绝对时间基准。

缺失模式:不是“没有数据”这么简单

缺失值对比较的影响取决于缺失模式。常见模式有三类:随机点缺失(偶发丢包)、连续段缺失(设备离线、通信中断)、周期性缺失(固定时段停机或采样窗口截断)。随机点缺失可用插值或跳过处理;连续段缺失若直接线性插值,会制造出并不存在的“平滑趋势”,使相关性被高估;周期性缺失则可能让比较结果在特定时段系统性偏差。

处理时应先统计缺失分布:缺失率、最长连续缺失长度、缺失是否集中在某些时段。对于连续缺失超过一定长度的区段,更稳妥的做法是标记为无效区段并在比较时排除,而不是强行填补。插值方法也要与信号特性匹配:温度等慢变量可用线性或样条插值,振动等快变量在缺失段内插值几乎没有物理意义。

噪声类型:决定比较指标是否可信

噪声不是“越干净越好”这么笼统。白噪声各频段功率均匀,对时域均值影响小但对逐点比较影响大;工频干扰(50/60 Hz 及其谐波)是窄带周期噪声,会在频谱上形成尖峰,若两路数据都受同一工频干扰,相关性会被虚假抬高;脉冲噪声(尖刺)会严重拉偏均方误差和峰值类指标;漂移则是低频趋势,会让长时间窗口内的均值比较失真。

因此,比较前应识别噪声类型并选择匹配的指标与预处理。含脉冲噪声时,用中位数或截尾均值替代均值;含工频干扰时,先做陷波滤波;含漂移时,先做去趋势。若两路数据噪声特性差异很大,直接比较原始波形意义有限,应比较滤波后的特征或统计量。

时序实验数据五大特征及其对齐比较影响 原始实验数据 对齐与比较的输入 时间戳 采集/写入/处理口径 精度·单调性·对时 采样率 决定比较分辨率 重采样·抗混叠 时区 本地时间 vs 绝对时间 夏令时·跨区实验 缺失模式 随机·连续·周期 插值风险·无效区段 噪声类型 白噪声·工频·脉冲 漂移·指标选择 对对齐比较的直接影响 相位偏移 · 分辨率损失 · 时刻错位 · 虚假趋势 · 指标失真 对齐前的数据体检与预处理动作 时间戳体检 单调·间隔·重复 统一时间栅格 降采样·抗混叠 统一 UTC 保留原始时区 缺失区段标记 排除或谨慎插值 噪声识别 选匹配指标

把特征检查落到一次具体比较中

假设一次教学示例实验:一路振动传感器以 1 kHz 采集,一路温度传感器以 10 Hz 采集,振动数据写入数据库时批量落库,温度数据带本地时间且未标时区,振动信号含明显 50 Hz 工频干扰,温度在中间某段因设备重启缺失约 30 秒。若直接按写入时间戳和本地时间对齐并逐点比较,会同时踩中时间戳偏移、时区歧义、采样率不匹配、连续缺失和工频干扰五个问题。

合理的处理顺序是:先把温度本地时间按实验地点还原为带偏移的绝对时间并统一到 UTC;再检查振动时间戳的单调性与相邻间隔,估计写入延迟并校正到采集时刻;然后以 10 Hz 为基准对振动降采样,降采样前做 50 Hz 陷波和抗混叠低通;接着标记温度缺失的 30 秒区段,在比较时排除该区段而非线性填补;最后选择对脉冲和工频不敏感的指标(如滤波后的均方根或中位数)进行比较。经过这一轮体检与预处理,两路数据才真正具备可比性。

时间戳、采样率、时区、缺失模式、噪声类型不是五个孤立知识点,而是同一份数据在“时间口径、分辨率、绝对时刻、完整性、信号质量”五个维度上的特征。对齐比较前逐项确认,比事后调参更有效。
不要用插值“修复”长时间连续缺失,也不要在未做抗混叠滤波的情况下直接降采样。这两类操作都会制造出原始数据中不存在的信息,使比较结论失去可信度。