impute_missing
Fill missing values in numeric columns using rule-based strategies (mean, median, forward/backward fill, or constant). The imputed data is saved to a new CSV and its absolute path is returned.
Instructions
impute_missing —— 数据探查组 · 缺失值插补(工具 28,v1.2.0 新增)。
与 missing_report 互补的确定性整治工具:只做规则插补(mean/median/ffill/bfill/constant), 不做任何"智能推断";绝不修改输入文件,插补结果写入 reports/imputed/ 新 CSV 并以 output 返回绝对路径(SPEC 第 11 节文件输出协议)。
docstring = agent 使用说明书,与 statlab_mcp/docs/design/01_data_exploration_batch1.md 同步维护。
参数: file_path (str): 本地数据文件(csv/tsv/xlsx/json),仅接受本地路径 columns (list[str]|None): 待插补的数值列清单;缺省 = 全部含缺失的数值列 (显式传入时逐列校验:不存在 → E1008;非数值列含 object 伪数值列 → E1009) strategy (str, "mean"): mean / median / ffill / bfill / constant; mean/median 仅基于有限观测计算(±Inf 不算缺失也不计入均值——排除数进 result) value (float|None): 仅 strategy="constant" 时必填的填充值(有限数, 拒绝 NaN/Inf/bool);其它策略携带本参数 → E1001
边界(钉死): - 无任何可插补对象 → E1012 中文报错,三种情形 message 独立: 全表无缺失 / 指定列均无缺失 / 缺失仅位于非数值列; - 列全缺失且策略为 mean/median/ffill/bfill 时无来源可用 → 该列跳过原样保留, 在 result.skipped_columns 与 summary 如实注明(不报错);constant 对全缺失列生效; - 输出文件 = reports/imputed/YYYYmmdd/impute_missing_<干名>_<策略>_YYYYmmdd_HHMMSS_fff.csv (utf-8-sig;Excel 公式注入转义与控制字符清洗见 SPEC 第 11 节第 5 条)。
返回: 成功 result 含 {columns_processed:[{column,strategy,filled,value_or_direction, excluded_nonfinite,residual_missing}], skipped_columns:[...], output_dir} + 顶层 output = 插补文件绝对路径。 局限声明(固定附于 summary 末尾):插补值为确定性规则估计,会低估方差、可能引入偏差, 后续分析请注明使用了插补数据。
示例: impute_missing("samples/dirty.csv") # 默认全部数值缺失列、均值 impute_missing("samples/dirty.csv", columns=["score"], strategy="median") impute_missing("samples/dirty.csv", columns=["note"], strategy="constant", value=0) inline 数据: 本工具支持可选 inline_data 参数(v1.2.0 起):与 file_path 二选一, 支持 records 数组或 {"header": [...], "rows": [[...], ...]} 对象两种形态; 规模上限/类型域/data_source 来源标注见 statlab_mcp/docs/SPEC.md 第 12 节。
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| value | No | ||
| columns | No | ||
| strategy | No | mean | |
| file_path | No | ||
| inline_data | No |