SystematicSampler - 系统采样算子
功能概述
按照固定间隔从数据中进行系统采样,适用于时间序列数据或需要均匀分布样本的场景。支持指定间隔或根据目标数量自动计算间隔。
触发条件
当用户提到以下任务时,应使用此skill:
- 系统采样
- 等距抽样
- 按间隔取样
- 均匀抽样
核心参数说明
必需参数
--input:输入JSONL文件路径--output:输出JSONL文件路径--method:采样方式,interval或count
可选参数
--interval:采样间隔,method=interval时使用--count:目标采样数量,method=count时使用--start_offset:起始偏移量,默认0--log_file:日志文件路径
输入文件格式
支持 JSONL,每行一个 JSON 对象。
使用方法
按间隔采样
python scripts/run_systematic_sampler.py \
--input data.jsonl \
--output sampled.jsonl \
--method interval \
--interval 10 \
--start_offset 0
按目标数量采样
python scripts/run_systematic_sampler.py \
--input data.jsonl \
--output sampled.jsonl \
--method count \
--count 1000 \
--start_offset 5
输出示例
[OK] Systematic sampling completed
Input: data.jsonl
Output: sampled.jsonl
Total records: 12
Sampling interval: 3
Start offset: 1
Sampled records: 4
Sampling rate: 33.33%
环境要求
- Python 3.x
- 标准库即可运行
注意事项
- 输入必须是 JSONL 格式。
method=count会基于目标数量估算间隔,并在需要时截断到目标数量。start_offset不能大于数据长度。- 输出记录会追加
_sample_index和_sample_interval标记。