表格分析智能体先看什么?生成字段概况、空值率和唯一值检查表

表格分析智能体读入数据后,先生成字段画像:类型、空值数与空值率、非空唯一值数、候选主键。示例还找出常量列,帮助决定哪些字段需要人工确认。

表格分析智能体开始计算之前,先用一张字段概况表确认输入质量。字段名称相同,不代表列里的值完整或类型正确;把画像先交给用户看,比直接生成图表和结论更容易发现问题。

画像至少包含哪些信息

对每列记录 pandas 推断的类型、缺失数、缺失比例、非空唯一值数,并标出“非空且唯一”的候选编号列。本例有四行,city 和 amount 各缺一个值,constant 四行全为 1,id 暂时像候选主键。

表格分析智能体先看什么?生成字段概况、空值率和唯一值检查表

候选主键只是程序检查结果;例如电话号码也可能暂时唯一,却不适合作长期编号。类型也只是当前读取结果,金额里的货币符号或日期的混合格式都需另查。画像是提问入口,不是自动清洗决策。

运行字段概况脚本

安装 pandas,将下面代码保存为 table_profile.py 并运行。示例数据为人工构造。tool_request 指定数据源编号和允许分析的列,画像工具返回 tool_result 的缺失列清单,供智能体说明下一步;例子没有接入真实 LLM 或文件系统。接入 CSV 时应先指定正确编码和必要的列类型,避免编号前导零被读掉。

import pandas as pd

# 仅展示表格分析前的概况,不替代业务规则审核。
frame=pd.DataFrame({'id':['a','b','c','d'],'city':['北京','上海','北京',None],
                    'constant':[1,1,1,1],'amount':[10,12,None,8]})
tool_request={'operation':'profile','source_id':'teaching-table-v1','columns':['id','city','constant','amount']}
assert tool_request['columns']==frame.columns.tolist()
profile=[]
for column in frame:
    values=frame[column]
    profile.append({'column':column,'dtype':str(values.dtype),'missing':int(values.isna().sum()),
                    'missing_rate':round(float(values.isna().mean()),2),
                    'unique_non_null':int(values.nunique(dropna=True)),
                    'candidate_id':bool(values.notna().all() and values.is_unique)})
report=pd.DataFrame(profile)
print(report.to_string(index=False))
print('constant_columns=',report.loc[report['unique_non_null'].eq(1),'column'].tolist())
tool_result={'source_id':tool_request['source_id'],'status':'needs_review',
             'columns_checked':len(report),'columns_with_missing':report.loc[report['missing'].gt(0),'column'].tolist()}
print('tool_result=',tool_result)

依据结果安排下一步

输出会显示 city、amount 的缺失率均为 0.25,constant 被列入常量列清单。若准备建模,可调查常量列是否无信息;若准备分析城市或金额,先追查缺失记录。id 是候选主键,但仍需与来源系统核对编号是否稳定。

  column   dtype  missing  missing_rate  unique_non_null  candidate_id
      id     str        0          0.00                4          True
    city     str        1          0.25                2         False
constant   int64        0          0.00                1         False
  amount float64        1          0.25                3         False
constant_columns= ['constant']
tool_result= {'source_id': 'teaching-table-v1', 'status': 'needs_review', 'columns_checked': 4, 'columns_with_missing': ['city', 'amount']}

pandas 的缺失值指南解释 isna 与数据类型相关的注意事项;基础指南介绍列类型与基础统计接口。

画像看不到的风险

只有四行的教学表不能代表真实分布。真实数据应检查每批导入的字段变化、类别漂移、异常单位和时间范围;缺失率高也不必然意味着删除该列。智能体应把这些观察作为待确认问题呈现,让数据负责人决定处理规则。

Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/31712.html

赞 (0)
AI小管家的头像AI小管家
AI 生成的数据质量规则怎么验收?把建议写成可执行断言与反例
上一篇 2小时前
NLP 中的 token 是什么?对照字符、词和子词理解长度与截断
下一篇 2小时前

相关推荐

联系我们

联系我们

1

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
关注微信
分享本页
返回顶部