课程概述

同学你好,


本课程是湖工大公选课 《Python数据分析与应用》的在线授课,原定纸质课表是


Python数据分析与应用

第9-13周  周三  9-10节

3-105


请选了马老师的“Python数据分析与应用”的公选课的同学加入本课程的学习。


如不明事宜,可以联系 企--鹅--号--   3-1-6-0-1-9-9-7


马忠宝(老师)

2020年02月18日 18:45

  

  本课程从数据处理的角度讲解统计分析,内容包括数据科学基础——数据与软件、探索性分析、可视化技术、统计推断、统计模型,大数据分析基础——预测分析法、决策分析法、综合评价法,大数据分析方法——统计方法,大数据分析入门——综合应用。课程内容的应用案例采用Python语言实现,便于学生提高实际操作能力,掌握数据分析的基本原理、模型、技术和应用。

证书要求

平时成绩、作业40%,期末技术报告及程序演示60%。

预备知识

   本课程主要面向数据分析及Python程序开发爱好者,不局限某个专业和学历层次,需要一些程序设计的基本概念如计算机求解问题的框架和一些如素数判断这样的基本算法,缺少上述基础的同学不用太担心,在上课过程中可以根据课程自己进度补充一下相关知识并多多进行编程练习即可。

授课大纲

MODULE 01: Python基础之第一周 走近Python

补充视频:Python环境搭建

1.1 Python简介

1.2 第一个Python程序

1.3 Python语法基础

1.4 Python数据类型

1.5 Python基本运算

1.6 Python的函数、模块和包

第一周 走近Python单元测验

MODULE 01: Python基础之第二周 Python面面观

2.1 条件

2.2 range函数

2.3 循环

2.4 循环中的break,continue和else

2.5 自定义函数

2.6 递归

2.7 变量作用域

拓展视频1:Python常用标准库函数

拓展视频2:异常

第二周 控制结构和函数编程练习(8题)

第二周 Python面面观单元测试

控制结构和函数编程题

MODULE 02: 数据获取与表示之第三周 数据获取与表示

拓展视频2:输入输出&函数式编程入门

拓展视频1:正则表达式简介

拓展视频3:可变可迭代对象修改问题解释

补充资料:序列运算、操作、函数和方法简介

进阶:爬虫小项目(3项)

3.1 本地数据获取

3.2 网络数据获取

3.3 序列

3.4 字符串

3.5 列表

3.6 元组

第三周 数据获取与表示基础编程练习(3题)

拓展视频4:动态网页数据爬取小例

第三周 数据获取与表示单元测试

数据表示编程题

MODULE 03: 第四周 强大的数据结构和Python扩展库

第4周拓展视频2:NumPy常见应用选讲

第4周拓展视频1:字典和集合编程示例介绍

4.1 为什么需要字典

4.2 字典的使用

4.3 集合

4.4 扩展库SciPy

4.5 ndarray

4.6 变长字典Series

4.7 DataFrame

第四周 强大的数据结构和Python扩展库单元测验

字典相关编程题

MODULE 04: Python数据统计与挖掘之第五周 Python便捷数据获取与预处理

5.4 数据预处理之数据变换

5.5 数据预处理之数据规约

拓展:财经数据接口TuShare研究和数据处理分析小项目

5.1 便捷数据获取

5.2 Python绘图基础

5.3 数据探索与预处理之数据清洗

数据集获取:数据预处理常用数据集titanic数据集获取

第五周 Python基本数据统计单元测验

MODULE 04: Python数据统计与挖掘之第六周 Python数据统计挖掘与应用

第6周拓展视频2:基于随机森林模型的红酒品质分析

6.1 数据探索之基本数据特征分析

6.2 基于pandas的数据统计与分析

6.3 聚类分析

6.4 Python的理工类应用

6.5 Python的人文社科类应用

第6周拓展视频1:基于pandas的男女电影评分差异分析

第六周 Python数据统计挖掘与应用单元测验

MODULE 05: 面向对象和图形用户界面

面向对象编程小练习

7.1 GUI与面向对象

7.2 抽象

7.3 继承

7.4 GUI的基本框架

7.5 GUI常用组件

7.6 布局管理

7.7 其他GUI库

7.8 综合应用

财经数据GUI编程项目

第七周 面向对象和图形用户界面单元测验

第八周 项目实践

参考项目3—文档相似性比较

项目实践说明

参考项目1—线性回归分析入门之波士顿房价预测

参考项目2—新浪动态新闻标题热点挖掘

第八周项目实践提交

参考资料

1. Python环境

Python 平台/IDE下载:

Anaconda官网下载地址:https://www.anaconda.com/distribution/

【说明】安装Anaconda后使用其中的Spyder,也可使用Anaconda中包含的Jupyter Notebook(Anaconda装好后直接启动后可使用,可将所有代码和执行结果存放于一个ipynb文件中,且能编辑和重新执行代码,还支持Markdown等文本编辑标记语言);或安装PyCharm等其他Python IDE,相比较来说,Anaconda平台已安装的第三方库更全,需要额外安装的包非常少,但内核的稳定性不如PyCharm,可根据自身情况选择安装,较优化的做法是使用PyCharm,同时在PyCharm中将解释器设为Anaconda,充分结合两者的优势,具体方式详见第一周文档说明和视频介绍~

2.Python参考书籍和网站

(1)  《Python数据分析与应用:从数据获取到可视化》中国铁道出版社,2019-03(参考教材)

(2)  Python编程 从入门到实践, [美]埃里克·马瑟斯 著, 人民邮电出版社.

(3)  SciPy科学计算:https://www.scipy.org/

(4)  Wes McKinney, Python for Data Analysis. 东南大学出版社. (英文影印本,中译版名为《利用Python进行数据分析》)

(5) Python标准手册和其他相关Python库官网文档


常见问题

提问:这门课非计算机专业的同学能听得懂吗?

回答:课程中尽量用简单的案例来让大家了解Python在相关方面的功能,只要认真听认真理解,完成作业并且多进行课后的编程实践,大部分内容是能够掌握的。

提问:是不是只要看完课程视频就可以完全掌握课程内容了?

回答:MOOC课程学习有它的特殊性,时长较短,并且每位学习者的基础有差异,所以我们提供了较多的In-video quiz和编程题/小项目的案例及参考答案,根据需要大家可以在视频学习后多加练习和理解。

提问:本课程是Python 2.x还是Python 3.x?

回答:Python 3.x,当然两者的区别没那么大,少部分专业必须用Python 2.x的学习者不用担心。