面向商业分析场景的智能数据准备系统。理解面板数据、时间序列、横截面数据的特殊结构,像独立分析师一样自主完成数据准备。
当前:里程碑 3 — Task Context + Validator(已完成)
- ✅ 自动识别数据结构类型(面板/时序/截面)
- ✅ 自动检测 ID 列和时间列
- ✅ 完整的列级 profiling(类型、缺失、分布、特殊值、inf检测)
- ✅ 混合类型检测:object列自动判断是否为"数值+字符串编码"(如 RET 含 B/C 码)
- ✅ 上下文感知 sentinel 检测:只对文档确认的字段标记(如 NUMTRD=99),不在价格列误报 $99
- ✅ 重复记录检测
- ✅ 六维度质量评分卡(consistency 维度惩罚混合类型列)
- ✅ 决策树(append-only,节点=快照,边=操作)
- ✅ Checkpoint(CSV持久化,每步自动保存)
- ✅ 非破坏性回退(移动HEAD,不删除)
- ✅ 三层上下文组装器(战略/阶段/节点)
- ✅ L1规则引擎(8个CRSP预置规则 + 混合类型转换规则)
- ✅ PARE记录(Problem→Action→Result→Evidence)
- ✅ 四区块知识结构(目标/资源/规则/过程知识)
- ✅ 数据描述解析器(从文档提取领域规则)
- ✅ 规则来源标注(document / ai_inference / user)+ 置信度
- ✅ Layer 1: 操作验证(每步自动,4项检查)
- ✅ Layer 2: 副作用检测(分布偏移、面板完整性、相关性变化)
- ✅ Layer 3: 目标对齐(变量就绪、无残留问题、样本量充足)
- ✅ 过程知识自动积累(Validator发现→learned_knowledge)
import pandas as pd
from idpa.scanner.scanner import DataScanner
df = pd.read_csv("your_data.csv")
scanner = DataScanner()
report = scanner.scan(df, file_name="your_data.csv")
scanner.print_report(report)idpa/
├── idpa/ # 核心包
│ ├── core/ # 共享数据结构(实体、质量评分)
│ ├── scanner/ # 数据扫描器(感知层) ← 里程碑1
│ ├── task_context/ # 业务知识管理 ← 里程碑3
│ ├── state_manager/ # 状态管理(决策树) ← 里程碑2
│ ├── planner/ # 规划决策 ← 第二期
│ ├── executor/ # 执行清洗 ← 里程碑2
│ ├── validator/ # 验证质检 ← 里程碑3
│ └── utils/ # 工具函数
├── data/ # 数据目录
├── tests/ # 测试
└── notebooks/ # 调试演示
- 里程碑 1: 数据扫描与诊断 ✅
- 里程碑 2: State Manager + L1 Executor(规则清洗 + checkpoint)
- 里程碑 3: Task Context + Validator(知识注入 + 质量验证)
- 里程碑 4: 端到端流程 + Streamlit UI