课程详情
课程评价
spContent=欢迎来到《用Python玩转数据》,这是第6次开课啦,大壮老师会尽量用非计算机专业小伙伴们能听得懂的方式讲述如何利用简单、易学、优雅的Python方便快捷地获取、表示、分析和展示数据,通过多个案例让大家轻松愉快地学会用Python玩转数据。本次课程将提供更多丰富的基础题和小项目供大家学习和拓展。
—— 课程团队
课程概述

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

   整个课程以财经数据为基础,通过构建一个个喜闻乐见的案例,让大家可以以更直观的方式领略Python的简洁、优雅和健壮,同时探讨Python除了在商业领域之外在文学、社会学和新闻等人文社科类领域以及在数学和生物等理工类领域同样拥有便捷高效的数据处理能力,并可以触类旁通将其灵活应用于各专业中。整个课程分5个学习模块和1个项目实战模块,从Python基本语法开始,到Python中如何从本地和网络上进行数据获取,如何表示数据,再到如何对数据进行基础和高级的统计分析及可视化,到最后如何设计一个简单的GUI界面来表示和处理数据,层层推进。

   主要介绍或项目使用到的Python第三方库有:Requests,BeautifulSoup,re,NumPy,pandas,Matplotlib,NLTK,Pillow绘图库,结巴分词,WordCloud词云图,Gensim。

授课目标

爱上Python,爱上数据分析,爱上用Python进行数据分析!

课程大纲

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

第一周 走近Python单元测验

1.1  Python简介

1.2 第一个Python程序

1.3 Python语法基础

1.4 Python数据类型

1.5 Python基本运算

1.6 Python的函数、模块和包

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

第二周 Python面面观单元测试

2.1 条件

2.2 range函数

2.3 循环

2.4 循环中的break,continue和else

2.5 自定义函数

2.6 递归

2.7 变量作用域

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

拓展2:异常

第二周 编程小练习(不计分)

编程寻找第n个默尼森数

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

3.1 本地数据获取

3.2 网络数据获取

3.3 序列

3.4 字符串

3.5 列表

3.6 元组

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

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

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

数据表示编程题

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

4.1 为什么需要字典

4.2 字典的使用

4.3 集合

4.4 扩展库SciPy

4.5 ndarray

4.6 变长字典Series

4.7 DataFrame

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

字典相关编程题

MODULE 04: Python数据统计和可视化之第五周 Python基本数据统计

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

5.1 便捷数据获取

5.2 数据准备

5.3 数据显示

5.4 数据选择

5.5 简单统计与处理

5.6 Grouping

5.7 Merge

Python免费财经接口TuShare研究

MODULE 04: Python数据统计和可视化之第六周 Python高级数据处理与可视化

第六周 Python高级数据处理与可视化单元测验

6.1 聚类分析

6.2 Matplotlib绘图基础

6.3 Matplotlib图像属性控制

6.4 pandas作图

6.5 数据存取

6.6 Python的理工类应用

6.7 Python的人文社科类应用

6.1扩展:scikit-learn经典机器学习经典入门小项目开发

6.4&6.5扩展:利用箱形图进行成绩数据分析

6.6扩展:WAV音频处理入门研究

6.7扩展:继续了解NLTK

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

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

7.1 GUI与面向对象

7.2 抽象

7.3 继承

7.4 GUI的基本框架

7.5 GUI常用组件

7.6 布局管理

7.7 其他GUI库

7.8 综合应用

财经数据GUI编程项目

第八周 项目实践

项目实践说明

参考项目1

参考项目2

参考项目3

第八周项目实践提交

预备知识

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

证书要求
  1. 本课程需要完成的作业

    在完成所有模块学习的基础上,每个学习模块后需要完成随堂测验和作业,内容为考察程序知识方面的客观题和编程题;最后一周需要完成一个实战项目。

  2. 本课程需要完成的考试

    课程结束后安排期末考试

  3. 总成绩

    总成绩 = 单元测试/作业*60%(包含同伴互评、编程和实战项目) + 期末考试*40%

  4. 证书

    总成绩60-79分为合格,可获得合格证书

    总成绩80-100分为优秀,可获得优秀证书

参考资料

1.几个常用的网站

Python IDE下载:

Anaconda下载地址(推荐安装)

清华大学(或其他国内)镜像(推荐,最后下载Python 3版本,页面最后是最新版本,含64的是64位IDE)

【说明】也可以安装PyCharm等其他Python IDE,相比较来说,Anaconda已安装的第三方库更全,需要额外安装的包非常少,但内核的稳定性不如PyCharm,可根据自身情况选择安装

2.Python参考书籍和网站

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

(2)  SciPy科学计算:http://www.scipy.org/

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


常见问题

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

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

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

回答:Python 3。