在Coze平台使用Python代码块清洗数据,须先启用「代码执行」插件并选择Python 3.10;再添加Python节点,用pandas清洗text字段(去空行、首尾空格及多余空白);支持去重、数值转换填充、正则过滤非法字符;调试需用print验证output为list of dict格式。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

在扣子(Coze)平台中使用Python代码块对原始数据进行清洗,需先确保Bot已启用「代码执行」插件并配置Python环境,否则代码块将无法运行或报错“未启用Python支持”。
启用Python代码执行环境
进入Bot编辑页 → 点击右上角「设置」→ 找到「插件」选项卡 → 开启「代码执行」插件 → 在「Python版本」下拉菜单中选择3.9或3.10(推荐3.10,兼容性更好)→ 保存设置。
【必须完成此步,否则后续所有Python代码块均会静默失败】
编写基础清洗代码块
在对话流中添加「代码」节点 → 语言选Python → 输入以下清洗模板:
立即学习“Python免费学习笔记(深入)”;
import pandas as pd
import numpy as np
df = pd.DataFrame(input_data)
df.dropna(subset=['text'], inplace=True)
df['text'] = df['text'].str.strip().replace(r'\s+', ' ', regex=True)
output = df.to_dict('records')
这段代码默认清洗input_data中的text字段:删空行、去首尾空格、合并中间多余空白符。若字段名不是text,需手动替换成实际字段名。
快速生成专业的 Python 脚本和应用代码。一键创建完整项目结构,支持CLI、API、爬虫、Bot、Django等多种项目类型,包含完整的项目结构、配置文件、依赖管理、测试、README和文档。
处理常见脏数据类型
方法一:去除重复行且保留首次出现记录
df.drop_duplicates(subset=['id'], keep='first', inplace=True)
方法二:强制转换数值列并填充异常值
df['price'] = pd.to_numeric(df['price'], errors='coerce')
df['price'].fillna(0, inplace=True)
方法三:按正则过滤非法字符(如仅保留中文、英文字母、数字、空格和常见标点)
df['content'] = df['content'].str.replace(r'[^\u4e00-\u9fa5a-zA-Z0-9\s,。!?;:""''()《》、]+', '', regex=True)
注意:正则中的Unicode范围u4e00-u9fa5覆盖常用汉字,若需支持生僻字或 emoji,需扩展范围或改用re.sub + 自定义逻辑。
调试与验证输出结构
第一步:在代码末尾插入 print(type(output)) 和 print(len(output))
第二步:运行测试对话,观察「调试日志」面板输出是否为list且长度非零
第三步:确认output是list of dict格式,每个dict的key必须与下游节点期望字段完全一致(大小写敏感、无空格)
第四步:若下游节点提示“字段不存在”,检查是否误用df.to_json()或df.values.tolist()——只有df.to_dict('records')生成标准键值对列表
这一步操作起来很简单,直接把print语句加在output = ...之后就行。但漏掉它,你可能花二十分钟排查字段映射问题,其实只是output格式不对。

















