QC16_TimeMissing 数据时序完整性检查Skill
功能概述
本skill用于检查时间序列数据的时序完整性。具体来说:
- 根据设定的时间频率(如每30分钟)生成预期的时间戳序列
- 遍历数据的实际时间范围,识别缺失的时间点(数据遗漏)
- 识别多余/不匹配的时间点(不在预期频率上的数据)
- 标记异常数据并输出
触发条件
当用户请求以下任务时,应使用此skill:
- 时序完整性检查
- 时间序列缺失检查
- 时间点完整性检验
- 数据遗漏检验
- 检查时间序列是否有缺失时间点
- 检查时间序列是否有非预期时间点
处理逻辑
- 读取输入的时间序列数据
- 设定数据记录频率(如30分钟)
- 计算数据时间范围内的预期时间点数量
- 生成预期时间戳序列
- 通过对比识别缺失时间点
- 通过对比识别多余/不匹配时间点
- 为异常数据添加质控标识
- 输出处理后的数据文件(原始数据 + 异常数据)
支持的文件格式
- CSV (.csv)
- TSV (.tsv)
- Excel (.xls, .xlsx)
- SPSS (.sav)
使用方法
步骤1:获取用户输入输出路径及参数
向用户确认:
- 输入文件路径
- 原始数据输出路径
- 异常数据输出路径
- 数据记录频率(分钟,如30表示30分钟)
- 时间字段名
- 时间格式
- 质控标识字段名(默认:QC0000)
步骤2:执行时序完整性检查脚本
在 scripts/ 目录下找到 QC16_TimeMissing.py,使用Python执行:
python scripts/QC16_TimeMissing.py \
--input_path <输入文件> \
--origin_output_path <原始数据输出文件> \
--error_output_path <异常数据输出文件> \
--data_frequency <数据频率(分钟)> \
--time_field <时间字段> \
--time_format "<时间格式>" \
--mark_field_name <质控字段名>
步骤3:返回结果
告知用户处理完成。
参数说明
| 参数 | 必填 | 说明 |
|---|---|---|
--input_path |
是 | 输入文件路径 |
--origin_output_path |
是 | 原始数据输出路径 |
--error_output_path |
是 | 异常数据输出路径(缺失/多余时间点) |
--data_frequency |
是 | 数据记录频率(分钟,如30表示每30分钟) |
--time_field |
是 | 时间字段名 |
--time_format |
是 | 时间格式(如:%Y-%m-%d %H:%M:%S) |
--mark_field_name |
否 | 质控标识字段名,默认QC0000 |
时间格式示例
| 格式 | 示例 |
|---|---|
| %Y-%m-%d | 2024-01-15 |
| %Y-%m-%d %H:%M:%S | 2024-01-15 14:30:00 |
| %Y/%m/%d | 2024/01/15 |
数据频率示例
| 频率值 | 含义 |
|---|---|
| 2 | 每2分钟 |
| 30 | 每30分钟 |
| 60 | 每60分钟 |
输出示例
Start reading input data...
[OK] Using encoding GB2312 successfully read CSV file
Successfully read file: /path/to/input.csv, data shape: (100, 5)
Min timestamp in data: 2024-01-15 00:00:00
Max timestamp in data: 2024-01-15 23:30:00
--- Missing time period check report ---
Found missing time periods, total 5 time points:
--- Extra/mismatched time period check report ---
No extra or mismatched time points found with expected frequency.
Start writing original data...
Successfully wrote file: /path/to/origin_output.csv
Start writing error data...
Successfully wrote file: /path/to/error_output.csv
Processing completed!
质控标识说明
Missing time point- 缺失时间点(数据遗漏)Extra time point- 多余时间点(非预期时间点)
注意事项
- 时间字段必须是可解析的日期时间格式
- 数据频率必须为正整数(分钟)
- 异常数据会输出到单独的文件,包含时间字段和质控标识字段
- 原始数据保持不变,仅输出异常数据明细
- 时间格式需要与实际数据中的格式完全匹配