|
| 1 | +# 项目 2: 监督学习 |
| 2 | +## 搭建一个学生干预系统 |
| 3 | + |
| 4 | +### 安装 |
| 5 | + |
| 6 | +这个项目要求使用 **Python 2.7** 并且需要安装下面这些python包: |
| 7 | + |
| 8 | +- [NumPy](http://www.numpy.org/) |
| 9 | +- [Pandas](http://pandas.pydata.org) |
| 10 | +- [scikit-learn](http://scikit-learn.org/stable/) |
| 11 | + |
| 12 | +你同样需要安装好相应软件使之能够运行 [iPython Notebook](http://ipython.org/notebook.html) |
| 13 | + |
| 14 | +优达学城推荐学生安装 [Anaconda](https://www.continuum.io/downloads), 这是一个已经打包好的python发行版,它包含了我们这个项目需要的所有的库和软件。 |
| 15 | + |
| 16 | + |
| 17 | +### 代码 |
| 18 | + |
| 19 | +初始代码包含在 `student_intervention.ipynb` 这个notebook文件中。这里面有一些代码已经实现好来帮助你开始项目,但是为了完成项目,你还需要实现附加的功能。 |
| 20 | + |
| 21 | +### 运行 |
| 22 | + |
| 23 | +在命令行中,确保当前目录为 `student_intervention/` 文件夹的最顶层(目录包含本 README 文件),运行下列命令: |
| 24 | + |
| 25 | +```ipython notebook student_intervention.ipynb``` |
| 26 | +```jupyter notebook student_intervention.ipynb``` |
| 27 | + |
| 28 | + 这会启动 iPython Notebook 并把项目文件打开在你的浏览器中。 |
| 29 | + |
| 30 | +## 数据 |
| 31 | + |
| 32 | +这个项目的数据包含在 `student-data.csv` 文件中。这个数据集包含以下属性: |
| 33 | + |
| 34 | +- `school` : 学生的学校(二元特征:值为“GP”或者是“MS”) |
| 35 | +- `sex` : 学生的性别(二元特征:“F”表示女性 或者是 “M”表示男性) |
| 36 | +- `age` : 学生的年龄(数值特征:从15到22) |
| 37 | +- `address`: 学生的家庭住址类型(二元特征:“U”表示城市 或者是 “R”表示农村) |
| 38 | +- `famsize`: 家庭大小(二元特征:“LE3”表示小于等于3 或者 “GT3”表示大于3) |
| 39 | +- `Pstatus`: 父母共同生活状态(二元特征:“T”表示共同生活 或者是 “A”表示分居) |
| 40 | +- `Medu`: 母亲的教育程度 (数值特征:0 - 未受教育, 1 - 小学教育(4年级), 2 - 5年级到9年级, 3 - 中学教育 或者 4 - 更高等级教育) |
| 41 | +- `Fedu`: 父亲的教育程度 (数值特征:0 - 未受教育, 1 - 小学教育(4年级), 2 - 5年级到9年级, 3 - 中学教育 或者 4 - 更高等级教育) |
| 42 | +- `Mjob` : 母亲的工作 (常量特征: "teacher", "health" 表示和健康看护相关的工作, "services" 表示公务员(比如:行政人员或者警察), "at_home"表示在家, "other"表示其他) |
| 43 | +- `Fjob` : 父亲的工作 (常量特征: "teacher", "health" 表示和健康看护相关的工作, "services" 表示公务员(比如:行政人员或者警察), "at_home"表示在家, "other"表示其他) |
| 44 | +- `reason` : 选择这所学校的原因 (常量特征:"home"表示离家近, "reputation"表示学校声誉, "course"表示课程偏好 或者 "other"表示其他) |
| 45 | +- `guardian` : 学生的监护人 (常量特征:"mother"表示母亲, "father"表示父亲 或者 "other"表示其他) |
| 46 | +- `traveltime` : 到学校需要的时间 (数值特征: 1 - 小于15分钟., 2 - 15到30分钟., 3 - 30分钟到1小时, 4 - 大于1小时) |
| 47 | +- `studytime`: 每周学习时间 (数值特征: 1 - 小于2个小时, 2 - 2到5个小时, 3 - 5到10个小时, 4 - 大于10个小时) |
| 48 | +- `failures`:过去考试失败的次数 (数值特征: n 如果 1<=n<3, 其他 4) |
| 49 | +- `schoolsup` : 额外的教育支持 (二元特征: yes 或者 no) |
| 50 | +- `famsup` : 家庭教育支持 (二元特征: yes 或者 no) |
| 51 | +- `paid` : 和课程有关的其他付费课堂 (数学或者葡萄牙语) (二值特征: yes 或者 no) |
| 52 | +- `activities` : 课外活动 (二元特征: yes 或者 no) |
| 53 | +- `nursery` : 参加托儿所 (二元特征: yes 或者 no) |
| 54 | +- `higher` : 希望得到高等教育(二元特征: yes 或者 no) |
| 55 | +- `internet` : 在家是否能够访问网络 (二元特征: yes 或者 no) |
| 56 | +- `romantic` : 有没有谈恋爱 (二元特征: yes 或者 no) |
| 57 | +- `famrel` : 与家人关系的好坏 (数值特征: 从 1 - 非常差 到 5 - 非常好) |
| 58 | +- `freetime` : 放学后的空闲时间(数值特征: 从 1 - 非常少 到 5 - 非常多) |
| 59 | +- `goout` : 和朋友出去(数值特征: 从 1 - 非常少 到 5 - 非常多) |
| 60 | +- `Dalc` : 工作日饮酒量(数值特征:从 1 - 非常少 到 5 - 非常多) |
| 61 | +- `Walc` : 周末饮酒量(数值特征:从 1 - 非常少 到 5 - 非常多) |
| 62 | +- `health` : 当前健康状况 (数值特征: 从 1 - 非常差 到 5 - 非常好) |
| 63 | +- `absences` :在学校的缺席次数 (数值特征: 从 0 到 93) |
| 64 | +- `passed` : 学生是否通过最终的考试 (二元特征: yes 或者 no) |
0 commit comments