要在 jupyter notebook 中直接调用 codegeex 生成可运行的数据分析代码,关键在于依赖 ide 提供的 notebook 内核桥接(原生不支持)、正确使用 %%codegeex 魔法命令或 alt+c 快捷键触发、确保提示词明确含“生成函数”或自然语言描述清晰,并逐 cell 分步验证 import、数据加载、处理与可视化代码的完整性。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

要在 Jupyter Notebook 中直接调用 CodeGeeX 生成可运行的数据分析代码,无需切换编辑器或手动拼接逻辑,关键在于激活插件的上下文感知能力并匹配正确的触发方式——这一步漏掉快捷键或 cell 类型,生成的代码大概率缺少 import 或报 NameError。
确认环境与插件已就绪
打开 Jupyter Notebook(非 Lab),确保已安装 CodeGeeX 官方插件且状态为启用。在任意 cell 中输入 import pandas as pd 并运行,验证 Python 环境能正常导入核心库。若报 ModuleNotFoundError,说明当前 kernel 未安装 pandas,需先执行 !pip install pandas。
检查右上角是否出现 CodeGeeX 图标按钮;没有则返回 VS Code 或 JetBrains IDE 安装插件后,通过其内置 Jupyter 支持启动 notebook —— 【Jupyter Notebook 原生不支持 CodeGeeX 插件,必须依赖 IDE 提供的 notebook 内核桥接】。
使用 %%codegeex 魔法命令生成清洗函数
在新 cell 中输入:
%%codegeex
换行后写明需求:
生成一个清洗函数 clean_df(df),要求:先按'id'列去重保留首次出现;再对数值列应用Z-score异常值截断(±3标准差);最后对剩余缺失值统一填为-999。
按下 Ctrl+Enter(Windows/Linux)或 Cmd+Enter(macOS)执行该 cell。CodeGeeX 将返回完整函数定义,含 from scipy import stats 和 np.where 判断逻辑。
注意:若生成结果中未出现 def clean_df(df): 开头,说明提示词未被识别为函数生成任务,需补全“生成一个函数”字样。
用自然语言注释触发 pandas 分析代码
方法一:在 code cell 中写注释后换行触发
输入:# 加载数据:读取input.xlsx的“原始数据”表,跳过前两行,设置第三行为列名
光标置于下一行,按下 Alt+C(默认快捷键),CodeGeeX 自动补全 pd.read_excel("input.xlsx", sheet_name="原始数据", skiprows=2, header=0)。
方法二:用三引号注释描述复杂聚合
输入:
"""基于df_sales DataFrame创建数据透视表:行字段为'区域'和'销售员',列字段为'产品类别',值字段为'销售额'求和,并添加总计行与总计列"""
回车后等待右下角图标旋转完成,按 Tab 插入代码,检查是否含 margins=True 和 aggfunc='sum'。
分步调试:逐 cell 生成分析单元
第一步:启动 Jupyter Notebook,新建 Python 内核笔记本。
第二步:在第一个 cell 中输入:# 加载数据:读取input.xlsx的“原始数据”表,跳过前两行,设置第三行为列名 → 按 Alt+C 生成 read_excel 语句并运行,确认 df 已加载。
第三步:在下一个 cell 中输入:# 计算各区域销售额均值与标准差,按均值降序排列 → 触发生成 df.groupby("区域")["销售额"].agg(["mean","std"]).sort_values("mean", ascending=False)。
第四步:再新建 cell,输入:# 绘制区域销售额箱线图,x轴为区域,y轴为销售额 → 生成 matplotlib 代码后,务必手动添加 plt.show(),否则图像不显示。











