Data Science for Beginners 使用指南:20 课学习路径、Jupyter 工作流与本地测验应用实操
【免费下载链接】Data-Science-For-Beginners10 Weeks, 20 Lessons, Data Science for All!项目地址: https://gitcode.com/GitHub_Trending/da/Data-Science-For-Beginners
《Data Science for Beginners》是一门“10 周、20 课、面向所有人”的开源数据科学课程。本篇使用指南围绕课程的使用手册 USAGE.md(以爱沙尼亚语译本 translations/et/USAGE.md 为蓝本,与英文原版内容一致)展开,讲清课程的四种使用方式、每一课固定的七步学习结构、Jupyter Notebook 的启动与运行方式、测验应用(quiz-app)的本地开发流程,以及面向自学者和教师的完整工作流,帮助读者把这套仓库真正跑起来并纳入自己的学习计划或课堂教学。
课程的四种使用方式
课程在设计上刻意保持灵活,同一套内容可以支撑四种典型使用场景:
- 自学(Self-paced learning):按照自己的节奏独立推进各课内容;
- 课堂教学(Classroom instruction):作为有引导的结构化课程使用;
- 学习小组(Study groups):与同伴协作学习;
- 工作坊(Workshop):高强度、短周期的集中学习。
无论采用哪种方式,底层目录结构都相同:课程按 6 大模块(1-Introduction 至 6-Data-Science-In-Wild)组织 20 个课时,每个课时一个独立目录。教师在 for-teachers.md 中可以找到按模块划分的完整课程清单(如第 1 部分 Introduction 包含“定义数据科学、伦理、定义数据、概率与统计概述”4 课)。
每一课的统一结构:七步学习法
为了最大化学习效果,仓库中的每一课都遵循一致的七步结构(以第一课 1-Introduction/01-defining-data-science/README.md 为例,可以逐一对应):
- 课前测验(Pre-lesson Quiz):检验已有知识;
- 手绘草图(Sketchnote,可选):核心概念的可视化总结,全部草图位于 sketchnotes/ 目录;
- 视频(可选):补充视频内容;
- 书面课程(Written Lesson):核心概念与讲解,即每课目录下的
README.md; - Jupyter Notebook:动手编码练习,即
notebook.ipynb; - 作业(Assignment):巩固所学,即
assignment.md或assignment.ipynb; - 课后测验(Post-lesson Quiz):强化理解。
单课标准工作流
下面是一段可直接照做的命令示例(来自使用手册原文):
# 1. 进入课时目录 cd 1-Introduction/01-defining-data-science # 2. 阅读 README.md(在浏览器或编辑器中打开) # 3. 完成课前测验(点击 README 中的测验链接) # 4. 打开 Jupyter notebook(如果该课提供) jupyter notebook # 5. 完成 notebook 中的练习 # 6. 完成作业 # 7. 完成课后测验需要注意的是,并非每一课都有 notebook:例如 2-Working-With-Data/05-relational-databases/ 提供的是 SQLite 数据库文件airports.db供 SQL 练习,而 1-Introduction/02-ethics/ 则只有书面材料与作业。开始前先查看课时目录内容即可。
Jupyter Notebook 工作流
启动 Jupyter
环境准备(创建虚拟环境、安装依赖)请参考 INSTALLATION.md,其中给出的关键命令为python -m venv venv创建虚拟环境,随后pip install jupyter pandas numpy matplotlib seaborn scikit-learn安装数据科学库。启动时的标准流程是:
# 激活虚拟环境 source venv/bin/activate # macOS/Linux # 或者 venv\Scripts\activate # Windows # 在仓库根目录启动 Jupyter jupyter notebook运行与保存单元格
- 执行单元格:按
Shift + Enter或点击 "Run" 按钮; - 全部执行:菜单 Cell → Run All;
- 重置内核:遇到问题时选择 Kernel → Restart。
保存方面:Jupyter 会周期自动保存;手动保存按Ctrl + S(macOS 为Cmd + S),所有进度都落在.ipynb文件中——这也是教师批改时直接查看学生 notebook 的基础。
在 Notebook 中处理数据的标准范式
使用手册给出的探索性数据分析(EDA)模板如下:
# 导入所需库 import pandas as pd import numpy as np import matplotlib.pyplot as plt # 加载数据集 df = pd.read_csv('data/sample.csv') # 探索数据 df.head() df.info() df.describe() # 创建可视化 plt.figure(figsize=(10, 6)) plt.plot(df['column_name']) plt.title('Sample Visualization') plt.xlabel('X-axis Label') plt.ylabel('Y-axis Label') plt.show()结合本仓库可以落地得更具体:data/目录自带多个真实数据集(如data/birds.csv、data/honey.csv、data/taxi.csv以及data/COVID/下的三张新冠疫情时间序列 CSV),把data/sample.csv换成../data/birds.csv(假设 notebook 在课时目录下运行)即可直接练习。仓库根目录的 examples/ 还提供了 5 个由浅入深的独立 Python 示例脚本(01_hello_world_data_science.py至05_real_world_example.py),可作为不依赖 Jupyter 的替代练习。
本地运行测验应用(quiz-app)
启动开发服务器
# 进入测验应用目录 cd quiz-app # 安装依赖(首次运行前) npm install # 启动开发服务器 npm run serve # 在 http://localhost:8080 访问从 quiz-app/package.json 可以确认:serve脚本对应vue-cli-service serve,该应用基于 Vue 2 + vue-router + vue-i18n 构建,build与lint脚本同样基于 @vue/cli-service。
路由与测验编号机制
从源码 quiz-app/src/router/index.js 可以看到应用只有三条路由:首页/、测验页/quiz/:id,以及兜底的 404 页面。也就是说,每个测验由 URL 中的数字 ID 定位。部署侧的 quiz-app/public/routes.json 则把所有路径(/*)回退到index.html,保证 history 模式下前端路由刷新不 404。
测验的使用规则:
- 课前测验链接在每课
README.md的开头(如第一课标题下的 "Pre-lecture quiz" 小节); - 课后测验链接在每课结尾;
- 每份测验包含 3 道题;
- 测验的定位是“强化学习”,而不是全面考核。
编号体系方面:全套共 40 份测验,编号 0–39,通常每课对应一组课前/课后测验;测验 URL 路径中包含测验编号,形如/en/ds/quiz/0。for-teachers.md 也印证了这套体系:“20 lessons, 40 quizzes, and 20 assignments”。
四条典型学习工作流
工作流 1:完整新手路径(顺序学完 20 课)
# 1. 按 INSTALLATION.md 完成环境搭建 # 2. 从第 1 课开始 cd 1-Introduction/01-defining-data-science # 3. 对每一课重复: # - 做课前测验 # - 阅读课程内容 # - 走完 notebook # - 完成作业 # - 做课后测验 # 4. 依次推进全部 20 课工作流 2:主题式学习
如果只关心某个方向,可以跳过前置模块直接切入对应目录。以数据可视化为例:
# 聚焦数据可视化 cd 3-Data-Visualization # 探索第 9-13 课: # - 第 9 课:数量可视化(Visualizing Quantities) # - 第 10 课:分布可视化(Visualizing Distributions) # - 第 11 课:比例可视化(Visualizing Proportions) # - 第 12 课:关系可视化(Visualizing Relationships) # - 第 13 课:有意义的可视化(Meaningful Visualizations)这 5 课均配有notebook.ipynb,且各自带solution/参考解答,适合作为独立专项训练。
工作流 3:项目式学习
# 1. 复习数据科学生命周期(第 14-16 课) cd 4-Data-Science-Lifecycle # 2. 走一遍真实世界案例(第 20 课) cd ../6-Data-Science-In-Wild/20-Real-World-Examples # 3. 把概念应用到自己的项目工作流 4:云数据科学
# 学习云数据科学(第 17-19 课) cd 5-Data-Science-In-Cloud # 第 17 课:云数据科学入门 # 第 18 课:低代码机器学习工具 # 第 19 课:Azure Machine Learning Studio自学者建议
保持条理
# 建立学习日志 mkdir my-learning-journal # 为每课创建笔记 echo "# Lesson 1 Notes" > my-learning-journal/lesson-01-notes.md规律练习
- 每天或每周固定时间投入学习;
- 每周至少完成一课;
- 定期回顾之前的课程。
参与社区
课程维护方提供了 Discord 社区(课程 README 中给出入口),其中 #Data-Science-for-Beginners 频道用于课程讨论;建议分享自己的进度、公开提问。
建立自己的项目
学完课程后,把学到的技术栈用在自己数据上:
# 示例:分析自己的数据集 import pandas as pd # 加载自己的数据 my_data = pd.read_csv('my-project/data.csv') # 应用所学技术 # - 数据清洗(第 8 课) # - 探索性数据分析(第 7 课) # - 可视化(第 9-13 课) # - 分析(第 15 课)教师指南
课堂准备
- 先读 for-teachers.md 获取详细指引(含 GitHub Classroom 搭建思路、在线/私有两种授课模式);
- 搭建共享环境(GitHub Classroom 或 Codespaces);
- 建立沟通渠道(Discord、Slack 或 Teams)。
for-teachers.md 还指出一个关键细节:若使用 GitHub Classroom,需要 fork 仓库并把每个课时文件夹拆成独立 repo,GitHub Classroom 才能逐课识别。
推荐的 10 周排课计划
- 第 1-2 周:Introduction(第 1-4 课)
- 第 3-4 周:Working with Data(第 5-8 课)
- 第 5-6 周:Data Visualization(第 9-13 课)
- 第 7-8 周:Data Science Lifecycle(第 14-16 课)
- 第 9 周:Data Science in the Cloud(第 17-19 课)
- 第 10 周:真实世界应用与期末项目(第 20 课)
离线 Docsify 文档服务
# 在仓库根目录本地发布文档,供课堂使用 docsify serve # 学生在 localhost:3000 访问 # 初始配置完成后无需互联网这与 for-teachers.md 中“该课程可以作为一个离线友好的独立网站运行,docsify serve后在localhost:3000访问”的说明一致。另外,根目录 package.json 的convert脚本(node_modules/.bin/docsify-to-pdf,配合 docsifytopdf.js)可以把整套文档进一步导出为 PDF。
作业批改
- 检查学生 notebook 中练习是否完成;
- 通过测验成绩检验理解程度;
- 按数据科学生命周期原则评估期末项目。
作业模板
使用手册给出了一份可直接套用的自定义作业模板:
Assignment: [主题] Objective: [学习目标] Dataset: [提供数据集或让学生自己找] Tasks: 1. 加载并探索数据集 2. 清洗并准备数据 3. 创建至少 3 张可视化 4. 执行分析 5. 沟通展示发现 Deliverables: - 包含代码与解释的 Jupyter notebook - 发现的书面总结离线使用
- 下载资源:
git clone克隆整个仓库即可;多数数据集已包含在仓库的data/目录中,无需额外下载; - 本地运行文档:
docsify serve后访问localhost:3000; - 本地运行测验应用:
cd quiz-app && npm run serve(端口 8080)。
三样就绪后,教学与练习流程即可完全脱离公网运行(测验应用首次npm install需要联网)。
多语言译本体系:以爱沙尼亚语版为例
本手册的译本 translations/et/USAGE.md 是理解译本体系的入口:它完整保留了英文版的章节骨架(课程使用方式、课时结构、Jupyter 操作、测验应用、四条工作流、自学者/教师建议、离线方案等),仅表格中的目录链接从英文版内的页内锚点改为指向仓库根目录。
从仓库结构看,translations/目录当前包含 55 个语言目录(ar、bg、cs、de、en、es、fr、ja、zh-CN等),每个语言目录均含 95 个文件(70 个 Markdown + 25 个 Jupyter Notebook),与英文版保持相同的目录结构:
# 访问某个语言的课时内容 cd translations/fr # 法语 cd translations/es # 西班牙语 cd translations/de # 德语 # ……以及更多语言每个译本都与英文版结构一一对应,例如 translations/et/1-Introduction/ 同样包含01-defining-data-science/README.md等课时文件。需要说明的是(译本末尾的声明):译内容由 AI 翻译服务生成,可能存在误差,英文原版为权威来源。
获取帮助
- 常见问题排查:TROUBLESHOOTING.md;
- 贡献与问题反馈流程:CONTRIBUTING.md;
- 环境安装问题:回到 INSTALLATION.md 的“Verify Your Installation”小节逐项自检(Jupyter 能否启动、quiz-app 是否可访问、docsify 文档是否在 3000 端口响应)。
这套“文档 + Notebook + 测验 + 数据集”一体化的仓库布局,使得从第一次jupyter notebook到第 20 课的期末项目,所有材料都可以在本地闭环完成。
【免费下载链接】Data-Science-For-Beginners10 Weeks, 20 Lessons, Data Science for All!项目地址: https://gitcode.com/GitHub_Trending/da/Data-Science-For-Beginners
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考