Skip to content
Back to skills

QC15 TimeChangeRange

ASecurity

最大变化范围检验工具。读取时间序列数据,检查在特定时间窗口内,数据是否出现了异常剧烈波动, 即在任意两个读数之间,其差值(变化量)的绝对值超出了预设的容忍阈值,识别并标记异常数据,最后输出为相同格式的文件。 当用户提到最大变化范围检验、变化范围检验、时间序列波动检验、窗口变化检测等需求时使用此skill。 即使用户没有说出"最大变化范围",只要任务涉及检查时间序列数据在时间窗口内的变化幅度是否异常,就应该使用此skill。

  • 539 stars
  • 0 votes
  • 0 copies
  • 0 views
  • Added September 11, 2026
developmentpythonbash

Security analysis

A100/100

Pro scans all 5 files and shows the line behind each finding

Scanned September 11, 2026

npx -y skills add cas-bigdatalab/piflow --skill QC15_TimeChangeRange --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of QC15 TimeChangeRange?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for QC15 TimeChangeRange
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/cas-bigdatalab-qc15-timechangerange/badge)](https://www.skillsdirectory.com/skills/cas-bigdatalab-qc15-timechangerange)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: QC15_TimeChangeRange
description: |
  最大变化范围检验工具。读取时间序列数据,检查在特定时间窗口内,数据是否出现了异常剧烈波动,
  即在任意两个读数之间,其差值(变化量)的绝对值超出了预设的容忍阈值,识别并标记异常数据,最后输出为相同格式的文件。
  当用户提到最大变化范围检验、变化范围检验、时间序列波动检验、窗口变化检测等需求时使用此skill。
  即使用户没有说出"最大变化范围",只要任务涉及检查时间序列数据在时间窗口内的变化幅度是否异常,就应该使用此skill。

name_zh: QC15_最大变化范围检验算子
input_params:
  - name: input_path
    type: string
    required: true
    description: 输入文件路径

  - name: output_path
    type: string
    required: true
    description: 输出文件路径

  - name: conditions
    type: string
    required: true
    description: 检验条件,格式:字段名,阈值,窗口大小,多行用换行分隔

  - name: time_field
    type: string
    required: true
    description: 时间字段名(用于排序判断连续性)

  - name: time_format
    type: string
    required: true
    description: 时间格式(如:%Y-%m-%d %H:%M:%S)

  - name: qc_mark
    type: string
    required: false
    default: "最大变化范围检验异常"
    description: 质控标识

  - name: mark_field_name
    type: string
    required: false
    default: QC0000
    description: 质控标识字段名

output_params:
  - name: output_path
    type: csv_file
    description: 最大变化范围检验后的结构化数据文件,带质控标识
tag: 数据校验
publisher: COMMUNITY
---

# QC15_TimeChangeRange 最大变化范围检验Skill

## 功能概述

本skill用于检查时间序列数据在特定时间窗口内是否出现了异常剧烈的波动。具体来说,计算滑动窗口内(指定连续次数)的最大值与最小值之差,如果差值超出预设的阈值,则标记为异常数据。

## 触发条件

当用户请求以下任务时,应使用此skill:
- 最大变化范围检验
- 变化范围检验
- 时间序列波动检验
- 窗口变化检测
- 检查数据变化幅度是否过大
- 时间窗口内异常波动检测

## 处理逻辑

1. 读取输入的被检验数据
2. 解析变化范围检验条件(字段名、阈值、窗口大小)
3. 按时间字段排序
4. 对每个指定字段,计算滑动窗口内的最大值和最小值
5. 如果窗口内最大值-最小值 >= 阈值,标记为异常
6. 为异常数据添加质控标识
7. 输出处理后的数据文件

## 支持的文件格式

- CSV (.csv)
- TSV (.tsv)
- Excel (.xls, .xlsx)
- SPSS (.sav)

## 使用方法

### 步骤1:获取用户输入输出路径及参数

向用户确认:
1. 输入文件路径
2. 输出文件路径
3. 变化范围检验条件(格式:字段名,阈值,窗口大小)
4. 时间字段名
5. 时间格式
6. 质控标识(默认:最大变化范围检验异常)
7. 质控标识字段名(默认:QC0000)

### 步骤2:执行最大变化范围检验脚本

在 `scripts/` 目录下找到 `QC15_TimeChangeRange.py`,使用Python执行:

```bash
python scripts/QC15_TimeChangeRange.py \
    --input_path <输入文件> \
    --output_path <输出文件> \
    --conditions "<检验条件>" \
    --time_field <时间字段> \
    --time_format "<时间格式>" \
    --qc_mark "<质控标识>" \
    --mark_field_name <质控字段名>
```

### 步骤3:返回结果

告知用户处理完成。

## 参数说明

| 参数 | 必填 | 说明 |
|------|------|------|
| `--input_path` | 是 | 输入文件路径 |
| `--output_path` | 是 | 输出文件路径 |
| `--conditions` | 是 | 检验条件,格式:字段名,阈值,窗口大小(如:Do_ppm,1,3)多行用换行分隔 |
| `--time_field` | 是 | 时间字段名(用于排序判断连续性) |
| `--time_format` | 是 | 时间格式(如:%Y-%m-%d %H:%M:%S) |
| `--qc_mark` | 否 | 质控标识,默认"最大变化范围检验异常" |
| `--mark_field_name` | 否 | 质控标识字段名,默认QC0000 |

## 检验条件格式

每行格式:`字段名,阈值,窗口大小`

示例:
```
Do_ppm,1,3
Temp_C,2,4
pH,4,5
```

表示:
- Do_ppm字段在3个连续时间点内最大值-最小值>=1则标记异常
- Temp_C字段在4个连续时间点内最大值-最小值>=2则标记异常
- pH字段在5个连续时间点内最大值-最小值>=4则标记异常

## 时间格式示例

| 格式 | 示例 |
|------|------|
| %Y-%m-%d | 2024-01-15 |
| %Y-%m-%d %H:%M:%S | 2024-01-15 14:30:00 |
| %Y/%m/%d | 2024/01/15 |

## 输出示例

```
[OK] Using encoding GB2312 successfully read CSV file
Reading input data: /path/to/input.csv
Writing output data: /path/to/output.csv
Processing completed!
```

质控标识格式示例:`最大变化范围检验异常(Do_ppm)` 表示Do_ppm字段在指定时间窗口内变化幅度过大

## 注意事项

1. 检验条件格式:字段名,阈值,窗口大小,每行一个字段
2. 阈值:窗口内最大值-最小值的最小允许差值
3. 窗口大小:连续时间点的数量(用于计算滑动窗口)
4. 数据按时间字段排序后进行检查
5. 质控标识格式:质控标识(异常字段1,异常字段2,...)
6. 与原有质控标识用分号拼接

Files in this skill

  • SKILL.md5.3 KB
  • assets/icon.png23.6 KB
  • scripts/QC15_TimeChangeRange.py9.2 KB
  • scripts/data_io.py5.8 KB
  • skill.json2.7 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…