智谱清言提供三种excel空值处理方式:自然语言一键清洗适用于规则统一场景;代码沙盒支持分组/条件填充等精准控制;sdk可配置全局策略实现批量自动化处理。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在智谱清言中对Excel表格执行数据分析时,空值会干扰统计结果、图表生成与模型推断,必须明确指定处理方式,否则系统可能跳过该列、报错中断,或默认填充为0导致业务逻辑失真。
上传后用自然语言指令一键清洗
这一步操作起来很简单,直接把文件拖进去就行。适用于空值比例低、规则统一的场景,比如“所有空单元格替换成‘未知’”或“用该列平均值填充”。
1、在智谱清言网页端或App中,点击输入框下方的“上传文件”图标,选择你的Excel(.xlsx/.xls,单文件≤100MB)。
2、等待状态变为“已就绪”,在对话框中输入清晰指令,例如:“清洗‘客户年龄’列,将空值替换为该列中位数;‘城市’列空值统一改为‘未填写’。”
3、系统自动识别字段类型与分布,2–5秒内返回预览——被填充的单元格会高亮显示,且附带修改统计(如“共填充17处空值”)。
注意:若指令中未声明空值处理方式,系统不会擅自填充,而是保留原空单元格并标注“存在未处理缺失值”,防止误判。
用代码沙盒精准控制填充逻辑
当空值需按分组、条件或外部数据源填充时,自然语言指令易歧义,必须进沙盒写Python。例如:销售数据中“折扣率”空值应按“产品类别+区域”组合均值填充,而非全表均值。
方法一:让AI自动生成基础脚本
上传文件后,输入:“打开代码沙盒,用pandas读取‘订单表’工作表,对‘退货金额’列:若为空,则按‘订单日期’所在季度的同类产品平均值填充;删除整行含空‘客户ID’的记录。”
系统即生成可运行代码,含pd.read_excel()、groupby().transform()等标准逻辑,并已加载你的数据为df变量。
方法二:手动补全关键判断
运行后若发现填充范围过大,可编辑代码,在fillna前加筛选条件:mask = df['退货金额'].isna() & df['订单状态'].isin(['已发货', '已完成']) → df.loc[mask, '退货金额'] = df.groupby(['产品类别', '季度'])['退货金额'].transform('mean')。
【务必检查groupby分组键是否真实存在且无空值,否则transform会返回NaN,导致空值未被填充反而扩散】
批量任务中通过SDK设定全局空值策略
如果你用智谱清言SDK接入内部BI系统,需对每日新增的10+张销售/库存表统一处理空值,这时不能每次手动输指令。SDK支持在请求体中预设清洗规则,避免重复交互。
第一步:初始化客户端时启用清洗中间件
在Python调用中,向chat.completions.create()传入data_cleaning_config参数:
{"numeric_columns": {"strategy": "median", "threshold": 0.3}, "text_columns": {"strategy": "constant", "value": "N/A"}}
第二步:设定触发阈值
当某数值列空值率>30%(【threshold=0.3】),系统自动改用插值法而非中位数,防止极端偏态分布下中位数失真;文本列一律填“N/A”,不尝试聚类填充。
第三步:调用分析接口时自动注入规则
后续所有analyze_table类请求,只要未显式覆盖该配置,即按此策略执行——空值处理从此脱离人工指令,进入确定性流水线。











