Data8 开荒记(环境配置与基本介绍)(论如何自己解决问题)
00 前言
这是我配过的最久的一次环境,折腾了大概有五个小时吧,网上的资料比较零散,特此将我的经历记录如下,节省后来人的时间。
01 大体介绍
资料的开源链接:data-8
克隆仓库:git clone git@github.com:data-8/materials-fa22.git
简单介绍:面向数据科学家的两门课:Data8 和 DS100 - 知乎
资源情况:
lab | ✅ |
---|---|
reading | ✅ |
slides | ✅ |
video | ✅ |
homework | ✅ |
project | ✅ |
vitamin | ✅(fa20) |
特别的,关于lab:
- lab是开源的,但官网上的lab是配好的在线环境,我们是没有访问权限的。
- 因此需要自行配置环境,也就是下文的内容
02 搭建环境
1. 安装Anaconda与Jupyter Notebook,建立虚拟环境
安装与使用说明:机器学习笔记-Anaconda与JupyterNotebook的简介与使用_LuZhouShiLi的博客-CSDN博客_anaconda jupyter notebook
如果换源失败则参考这篇文章:CondaHTTPError: HTTP 000 CONNECTION FAILED for url <https://mirrors.tuna.tsi解决办法 亲测有效_weixin_49304494的博客-CSDN博客
阅读完上述文章之后,你应该能够
-
基本了解conda与jupyter
-
学会新建一个python环境,并激活他,以后我们就使用你新建的环境进行各项活动。
-
配置好合适的源
-
安装,打开,使用jupyter notebook运行python代码,编辑markdown
-
尝试用notebook访问课程的lab文件(如 lab01.ipynb)
效果图:
注意我们是在Anaconda Prompt 中进行各种操作。
tips:如果想要访问D盘的文件,可以在cmd中输入D:
切换到D盘,再输入jupyter notebook
即可。
2. 安装各种包
不出意外,当你执行第一行代码,应该会报错
这里的ModuleNotFoundError: No module named 'otter'
告诉我们,我们缺少了某些模块,在接下来的代码中,可能还会遇到很多次。
module的安装
-
一般可以尝试直接安装,引号里的模块。
-
如果不行,则尝试百度/谷歌这段报错
No module named 'otter'
。 -
如果还是不行,则百度/谷歌python + 对应的模块名。
下面演示datascience,otter的安装
安装 datascience
data-8/datascience: A Python library for introductory data science
安装方法:pip install datascience
安装otter
- 第一种:直接pip,失败
- 第二种:直接贴报错详细,失败(谷歌的第一个结果答案是错的)
- 第三种:搜索 otter 相关信息,成功
再最下面可以看到关于otter的介绍,发现它的全称是otter-grader
,可以进一步搜索otter-grader
,或者尝试pip下载,这里进一步搜索,发现确实有这样的一个模块
如果是谷歌,直接搜到otter-grader的官网,点进去,就会看到安装说明,正解就是pip install otter-grader
题外话,从上例就可以看出有时候百度有多xx吧。如果用不了谷歌也不要紧,可以用这个搜索引擎:Searx Belgium
异常处理
如果你在cmd成功安装了,如图。但是在jupyter还是用不了的话,那就是内核的选择出了问题,请继续阅读。
3.配置kennel(选做)
如果遇到了jupyter无法导入已安装的包的问题,则进行本部分内容。
kennel可以说是python内核,不同的内核其对应的模块是不一样的,下面给出了解决方案。
创建一个新的kennel:【工具配置】【Jupyter】Windows下,为Jupyter创建新的kernel_拾夕er的博客-CSDN博客_jupyter 创建kernel
然后在jupyter中选择新建的内核就可以正常运行第一段代码辣
效果图(我这里新建的内核叫NewKerne3):
03 修改test文件
你是否已经迫不及待的想开始了?下面我们进行data8的第一个问题并评测!
第二个代码块要求你输入secret_word
,答案是secret_word = 'welcome'
第三个代码块便是test,运行,可能会出现以下报错:
根据Python Format — Otter-Grader documentation,猜测这个报错大意是test_file缺少定义全局变量OK_FORMAT
。
解决这个问题也很简单,我们在lab01文件夹下找到test文件夹,修改文件q0.py
,在第一行加上OK_FORMAT = True
,保存,即可。
成功!!
但是,我们不可能一个一个去改吧...肯定要借助工具批处理,我也不知道为什么会有这个bug,不过还能接受,查阅资料,发现linux下一个命令可以替我们完成这样的需求。
学习上述命令之后,编写以下shell脚本,大意是,给当前文件夹的所有.py文件的第一行添加OK_FORMAT = True
。
保存后 用git bash打开即可。(对于每个测试文件夹都应修改一次)
不出意外接下来就可以开始你的data8之旅了!
04 结语
不出意外的话,各个部分应该是可以正常运行的了,有可能会有一些包没安装,那么就安装好了,要是还有其它问题,那就谷歌/百度,借鉴前人经验的动手解决问题,是每一个大学生都应具备的能力。希望你能成功配置环境,既收获劳动的喜悦,也收获解决问题能力。
本文肯定还有很多不完善的地方,如果你的问题没有在此出现,希望你能够使用搜索引擎寻找自己的答案,如本文有错误或者不足,烦请读者指出。