本课程主要面向物联网工程专业的同学们。作为一个多学科交叉领域,数据挖掘从多个学科吸取营养。这些学科包括统计学、机器学习、模式识别、数据库技术、信息检索、网络科学、知识库系统、人工智能、高性能计算和数据可视化。
本课程旨在提供数据挖掘领域的一个广泛而深入的概览,根据授课学时、学生背景和兴趣,本课程安排了授课内容,共计6个部分:
1、走近Python:Python语法与应用
2、认识数据:数据获取与表示
3、数据预处理
4、数据挖掘理论、算法与应用
5、数据可视化
6、项目实战
《物联网数据处理》课程考核计分方案: 1、平时成绩(40%)+Project考核(60%) 2、平时成绩(40%)=签到(10%=1%/次*10次)+实验(20%=2.5%/次*8次)+作业(10%=5%/次*2次) 3、Project考核(60%)=项目源码及实现(10%)+项目演示(PPT)录制(10%)+项目考核论文(40%,毕业论文格式)。 温馨提示:Project考核主题,考核方式及详细考核标准另附。
本课程主要面向大学本科物联网工程专业的同学们,需要一定的程序设计的基本概念:如计算机求解问题的框架和一些如素数判断这样的基本算法,缺少上述基础的同学不用太担心,在上课过程中可以根据课程自己进度补充一下相关知识并多多进行编程练习即可。
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—新浪动态新闻标题热点挖掘
第八周项目实践提交
第九周 线下教辅补充内容
9.1《数据挖掘:概念与技术》第三版
9.2 Python数据分析与挖掘实战
第十周 期末考核
10.1Project路演PPT
10.2Project路演录制视频
10.3Project路演考核论文
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.数据挖掘参考书籍和网站
(1)数据挖掘:概念与技术(第三版).Jiawei Han.机械工业出版社
Python参考书籍和网站
(1) Python程序设计, 张莉, 金莹等. 高等教育出版社, 2019.
(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的学习者不用担心。