返回课程总览

实验 05 · 阶段检查

Python 阶段性小作业

完成一个多文件 Python 数据总结项目,生成 results.txt 并记录 Codex 取舍。

核心问题

程序如何总结一个小数据集,并检查这些总结在数学上是否合理?

复用技能

  • 多文件 Python 项目
  • 辅助函数
  • 输出文件
  • 人工数学检查

主要任务

  1. 扩展 analysis_helpers.py。
  2. 计算中心化值、平方偏差、平方偏差和和平均平方偏差。
  3. 生成 results.txt,并在 README 中说明 Codex 建议的接受和拒绝。

提交内容

完整讲义

实验 5:Python 阶段性小作业

目标

在进入 MATLAB 之前,完成一个小型 Python 项目。这是第一次阶段性检查, 要求你把 PowerShell、VS Code、Codex、Python 文件、实验笔记、输出文件和 人工数学检查组合起来使用。

数学问题

程序如何总结一个小数据集,并检查这些总结在数学上是否合理?

使用数据集:

[2, 4, 5, 7, 11, 13]

完成后的项目必须计算:

  • 个数;
  • 总和;
  • 平均值;
  • 最小值和最大值;
  • 中心化后的值,即每个值减去平均值;
  • 平方偏差;
  • 平方偏差和;
  • 平均平方偏差。

必需项目结构

项目必须放在 labs/lab05/ 中:

labs/lab05/
  README.md
  main.py
  analysis_helpers.py
  prompts.md
  results.txt

设置

  1. 打开课程根目录:

``powershell cd Desktop\codex-matlab-class mkdir labs\lab05 code . ``

  1. starters/lab05/ 中的所有文件复制到 labs/lab05/
  2. 创建 notes/lab05-notes.md
  3. 运行 starter 项目:

``powershell python labs\lab05\main.py ``

Codex 任务

从课程根目录启动 Codex:

codex

使用并记录类似提示词:

I am a math student with basic Python knowledge.
In labs/lab05, extend this beginner project.
Add helper functions for centered values, squared deviations,
sum of squared deviations, and mean squared deviation.
Update main.py so it prints the results and writes them to results.txt.
Keep the code beginner-friendly and do not use classes, pandas, or numpy.
Explain what changed and how I should check the math by hand.

再问一个解释类提示词:

Please explain labs/lab05/main.py and labs/lab05/analysis_helpers.py line by line.
Focus on the mathematical meaning and on which parts I should verify myself.

人工检查

对于数据集 [2, 4, 5, 7, 11, 13],手算检查:

  • 总和是 42
  • 平均值是 7
  • 中心化后的值是 [-5, -3, -2, 0, 4, 6]
  • 中心化后的值相加为 0
  • 平方偏差是 [25, 9, 4, 0, 16, 36]
  • 平方偏差和是 90
  • 平均平方偏差是 15

README 要求

labs/lab05/README.md 中写清楚:

  • 使用了什么数据集;
  • 程序计算了哪些总结值;
  • 如何从 PowerShell 运行项目;
  • 一个你手动检查的结果;
  • 一个你接受的 Codex 建议;
  • 一个你修改或拒绝的 Codex 建议。

提交内容

  • labs/lab05/main.py
  • labs/lab05/analysis_helpers.py
  • labs/lab05/README.md
  • labs/lab05/prompts.md
  • labs/lab05/results.txt
  • notes/lab05-notes.md
  • PowerShell 输出截图

Checkpoint

向教师展示:

  • python labs\lab05\main.py 可以从课程根目录运行;
  • results.txt 被创建或更新;
  • 你能解释为什么中心化后的值相加为零;
  • 提示词记录中至少包含一个接受的 Codex 建议和一个被修改或拒绝的建议。