4、数据准备与预处理:数据来源、数据清洗、缺失值处理与异常值检测

国际航运需求预测模型的精度,很大程度上取决于输入数据的质量。航运市场是一个典型的“数据丰富但信息稀疏”的领域——港口吞吐量、贸易统计、运价指数等数据分散在不同机构、不同格式、不同统计口径之下。若未经系统化的清洗与预处理,模型训练将面临“垃圾进、垃圾出”的困境。本章围绕数据来源的甄别、清洗流程、缺失值策略与异常值检测方法展开,为后续特征工程与模型选型奠定可靠的数据底座。

数据来源 港口吞吐量 贸易数据 运价指数 数据清洗 格式统一 口径对齐 去重去噪 缺失值处理 删除 / 插补 前向填充 模型预测插补 异常值检测 IQR / Z-score 业务规则 时序异常 数据质量验证闭环 完整性 → 一致性 → 准确性 → 时效性 → 可解释性 港口吞吐量数据 来源:港务局/交通部 频率:月度/周度 关键字段:TEU、货物吨位 风险:口径变更、漏报 贸易数据 来源:海关/IMF/UNCTAD 频率:月度/季度 关键字段:进出口额、量 风险:滞后发布、汇率波动 运价指数 来源:SCFI/BDI/WCI 频率:周度/日度 关键字段:综合指数、分航线 风险:样本调整、异常波动 图:航运需求预测数据准备与预处理链路

4.1 数据来源:三大核心数据源的特征与获取策略

国际航运需求预测通常需要融合三类数据:港口吞吐量数据(反映实际物流活动)、贸易数据(反映宏观经济与货物流向)、运价指数(反映市场供需与价格信号)。三者互为补充,构成需求预测的“铁三角”。

核心原理

港口吞吐量是需求预测的“结果变量”,贸易数据是“驱动变量”,运价指数是“市场情绪变量”。模型需要同时捕捉这三者的时序特征与交叉影响。例如,中国出口集装箱运价指数(CCFI)的持续上涨往往预示着短期内港口吞吐量的增长,但存在1-3周的滞后期。

数据源对比与选择

数据源 典型来源 更新频率 主要字段 质量风险
港口吞吐量 交通运输部、港务集团、Clarksons 月度(部分周度) TEU、货物吨位、船舶艘次 统计口径调整、漏报、节假日扰动
贸易数据 海关总署、IMF、UNCTAD 月度/季度 进出口金额、数量、贸易伙伴国 发布滞后、汇率换算误差
运价指数 SCFI、BDI、WCI、FBX 周度/日度 综合指数、分航线运价 样本调整、异常跳变、长鞭效应
实操建议:优先选择官方或行业协会发布的、具有连续历史序列的数据源。对于运价指数,建议同时获取SCFI(上海出口集装箱)和BDI(波罗的海干散货)作为互补信号,避免单一指数失真。

案例拆解:某航运咨询公司的数据源整合

某国际航运咨询公司在为东南亚航线建立需求预测模型时,初期仅使用新加坡港月度吞吐量数据,模型R²仅为0.62。后来引入中国-东盟贸易月度数据(滞后1个月)和SCFI东南亚分航线指数(周度均值化),模型R²提升至0.81。关键操作:将不同频率数据统一为月度粒度,贸易数据按汇率折算为美元计价,运价指数取月内平均值。

常见误区

  • 误区一:只关注单一数据源,忽视交叉验证。例如,港口吞吐量增长但贸易数据下滑,可能意味着转运量增加而非真实需求增长。
  • 误区二:忽略数据发布滞后性。贸易数据通常滞后1-2个月,直接使用会导致预测“未来”实际是“过去”。
  • 误区三:未处理节假日效应。中国春节、欧美圣诞季对吞吐量有显著影响,需单独标记。

4.2 数据清洗:格式统一、口径对齐与去重去噪

数据清洗是预处理的第一步,目标是让来自不同源的数据在格式、粒度、统计口径上保持一致,并去除明显的噪声与重复记录。

操作流程

  1. 格式统一:日期格式统一为YYYY-MM-DD,数值字段统一为浮点数,文本字段去除首尾空格。
  2. 粒度对齐:将日度、周度数据聚合为月度,或按模型需求进行降采样/升采样。
  3. 口径对齐:确认各数据源的统计口径(如“吞吐量”是否包含空箱、转运箱),必要时进行系数换算。
  4. 去重:检查重复记录,保留最新版本或按业务规则合并。
  5. 去噪:剔除明显错误记录(如吞吐量为负值、运价指数超过历史极值5倍以上)。

实战场景:多源数据合并中的口径冲突

某物流科技公司在构建“一带一路”沿线国家航运需求模型时,发现中国海关出口数据与目的港进口数据存在约8%的差异。经排查,原因是部分货物经第三国中转,海关统计为“转口贸易”而非“直接出口”。解决方案:引入“贸易流向修正系数”,按历史中转比例对数据进行调整。

风险提示:数据清洗过程中应保留原始数据备份,所有清洗操作需记录日志。清洗后的数据应进行抽样人工复核,避免自动化清洗引入系统性偏差。

4.3 缺失值处理:从删除到插补的策略选择

航运数据缺失是常态,原因包括:港口报告延迟、节假日无数据、统计口径变更导致历史断档、部分航线数据未覆盖等。缺失值处理策略直接影响模型训练效果。

缺失值类型与应对策略

缺失类型 特征 推荐策略 适用场景
完全随机缺失 缺失与数据本身无关 删除或均值插补 个别月份数据缺失
随机缺失 缺失与其他变量相关 回归插补、KNN插补 某港口因系统故障连续缺失
非随机缺失 缺失与缺失值本身相关 模型预测插补+业务规则 高运价时期部分航线数据缺失

操作流程

  1. 缺失率评估:计算每个字段的缺失率,缺失率超过30%的字段考虑剔除或重构。
  2. 时序插补优先:对于时间序列数据,优先使用前向填充(forward fill)或线性插值。
  3. 多变量插补:当多个变量相关时,使用多重插补(MICE)或随机森林插补。
  4. 业务规则修正:对于节假日缺失,使用去年同期值乘以增长率进行修正。
案例:某航运数据平台在构建“远东-欧洲”航线需求模型时,发现2020年3-4月欧洲港口吞吐量数据缺失严重(疫情导致报告中断)。采用“贸易数据+运价指数”联合插补:先建立贸易量与吞吐量的回归模型,再用运价指数作为调节变量,最终插补误差控制在5%以内。

常见误区

  • 误区一:一律删除缺失值。当缺失率超过10%时,删除会导致样本量不足或引入偏差。
  • 误区二:使用全局均值插补。航运数据具有强季节性,全局均值会抹平季节性波动。
  • 误区三:忽视缺失模式。如果缺失集中在特定时间段(如每年春节),需单独处理。

4.4 异常值检测:从统计方法到业务规则

异常值在航运数据中既可能是“噪声”(数据录入错误),也可能是“信号”(突发事件如苏伊士运河堵塞、疫情封港)。检测异常值需要结合统计方法与业务知识。

检测方法对比

方法 原理 适用场景 局限性
Z-score 偏离均值超过3个标准差 正态分布数据 对非正态分布不敏感
IQR(四分位距) 超出Q1-1.5×IQR或Q3+1.5×IQR 偏态分布数据 对样本量敏感
时序异常检测 基于移动平均或STL分解 趋势+季节性数据 参数调优复杂
业务规则 设定合理范围(如吞吐量环比变化不超过50%) 有明确业务约束 规则制定依赖经验

操作流程

  1. 初步筛选:使用IQR或Z-score快速标记潜在异常值。
  2. 业务复核:对标记的异常值进行人工核查,确认是否为真实事件(如罢工、自然灾害)。
  3. 处理决策:真实事件保留并添加事件标签;数据错误则修正或剔除。
  4. 记录日志:所有异常值处理需记录原因与处理方式,便于模型解释。
风险提示:不要机械地剔除所有异常值。2021年“长赐号”搁浅导致苏伊士运河堵塞,当周亚欧航线运价指数暴涨300%,这是真实的市场信号,应保留并作为特征变量,而非作为噪声剔除。

案例拆解:异常值处理对模型精度的影响

某研究机构使用2015-2022年全球集装箱吞吐量数据预测2023年需求。初始模型(未处理异常值)的MAPE为12.8%。经异常值检测后,发现2020年Q2数据因疫情导致吞吐量骤降40%,属于“真实异常”。处理策略:保留该数据但添加“疫情事件”虚拟变量。模型MAPE降至9.6%,且对2023年预测的置信区间收窄了18%。

总结复盘

  • 数据来源决定模型上限:多源数据融合优于单一数据源,但需注意口径一致性。
  • 清洗是基础工程:格式统一与去重去噪是后续所有步骤的前提,建议建立自动化清洗流水线。
  • 缺失值处理需“因时制宜”:时序数据优先插补,横截面数据可考虑删除,但需评估缺失率。
  • 异常值检测是“艺术+科学”:统计方法提供候选,业务知识做最终判断,两者缺一不可。
最终建议:建立数据质量监控看板,定期检查数据源的完整性、一致性与时效性。在模型训练前,至少完成一轮“数据质量报告”,记录清洗规则、缺失值插补方法、异常值处理决策,确保模型可复现、可审计。