本书是一本针对所有层次的智能技术读者而作的基于Python实现智能技术的入门书。全书分四大部分:第一部分介绍用Python获取数据所必须了解的基本概念,其中包括Python语法,HTTP标记和基本文件存储,以及从网页中爬取数据的方法和爬虫框架等内容。第二部分讨论了JSON数据格式和基于结构化和非结构化数据库的存储,包括MYSQL数据库,MONGO数据库和REDIS数据库的基本使用。第三部分介绍处理
本教材的基本内容是将人工智能领域中的机器学习、数据挖掘等智能技术应用于人文和社科领域。本教材共分为9章。
第一章讨论了大数据技术的一些基本概念,同时还对计算机语言Python进行了简要介绍,它们是学习智能技术的基础。第二章讨论了基于Python的计算机爬虫与网页交互的基本原理和爬虫技术的应用。第三章介绍了爬虫框架,为了节约开发成本和避免重复工作,利用爬虫框架可以设计满足应用要求的数据爬虫。第四章介绍了数据存储的相关概念和各种具体的存储方法,主要包括文件格式的数据存储,如纯文本格式、CSV格式、Excel格式和基于数据库的存储,包括MySQL数据库、Mongo数据库和Redis数据库。第五章讨论了数据挖掘的基本概念。近些年来随着大数据技术的快速发展,数据模型方法也在不断发展,内容非常丰富。传统的数据统计和分析方法正在向数据挖掘模型领域过渡。大数据模型的分析结果为决策者提供了更加丰富的决策依据。这章介绍了贝叶斯决策模型的基本原理,并将这个模型应用到一个信用卡申请数据集上。第六、七章分别介绍了Python的数据处理工具——Numpy库和Pandas库。虽然它们都是Python的第三方库,但它们在数据分析和数据挖掘领域中具有非常重要的地位。数据挖掘算法中大部分的数据处理是调用Numpy库来完成基础数据计算的。这是由于Numpy比Python语言中的列表更具有优势,其中一个优势就是运算速度。一般来说对大型数组进行运算时,Numpy库的运算速度比Python列表的运算速度快了好几百倍。另一方面,Pandas又是基于Numpy开发出来的第三方库,其特点为数据面板和数据分析二者的集成。它提供灵活的数据结构,并提供一些标准的数据模型,能够高效地操作大型数据集。Pandas提供了大量能使我们快速高效地处理数据的函数和方法。第八章讨论了如何对数据进行清洗以方便数据挖掘模型的使用。数据需要清洗的原因是在原始数据集中存在数据重复现象、数据缺失情况,或数据存在不一致性。所以数据清洗的目的就是为了删除重复数据,补齐缺失的数据,消除数据的不一致性。这样才能保证数据质量来支撑数据挖掘模型。第九章介绍了数据可视化的概念和实现的技术。通常在进行大数据分析时,往往需要在运行模型之前进行探索性的数据分析,这样方便我们对数据特性的了解。这时最直观的方法是采用数据可视化技术达到解读数据的目的。同样在数据挖掘模型输出结果之后,我们也可以利用可视化技术把最终的结果以各种表格或各种图形呈现出来。
所以,这本教材的基本主线是,首先通过讨论智能爬虫来达到收集数据并根据类型进行处理后再存储到数据文件或数据库中。利用Numpy库或Pandas库进行数据基本处理后,再利用数据挖掘模型对数据进行训练并获得模型输出的结果,最后利用可视化技术展现结果供决策使用。
我们知道,近些年来,随着各种数据量的快速增长,传统数据处理和分析方法显得比较落后。而在财经和人文学科中,传统数据处理课程仍是主流,我们编写这本教材的主要意图是为工商管理、会计、金融、人力资源和社会保障专业的大专、本科和研究生提供基于大数据下的智能分析工具。通过学习,这些专业的学生将能够掌握如何从网络中获取、存储、分析数据并显现分析结果。比如,金融专业学生可以从网上快速获取股票交易的实时或历史数据来进行分析,会计专业学生可从网上获取上市公司年报数据进行分析。
文科学生害怕计算机编程,在这本书中,我们使用Python语言的文本特性来实现数据提取、数据存储、数据分析和数据的可视化应用,目的在于降低文科学生的学习门槛并为解决问题提供详细的方法。本书中的所有Python源代码都可用文本格式直接打开,具有非常好的可读性,代码可以在Python的人机对话环境中运行,也可以在Jupyter或其他环境中运行。
在本教材的写作过程中,笔者获得了首都经济贸易大学管理工程学院量化金融中心教师和研究生的支持,笔者在此对他们表示感谢。本书中的大部分例子和Python机器学习算法案例来自中心的研发结果。
康跃 1984年毕业于天津大学,获管理科学硕士学位。现为首都经济贸易大学管理工程学院管理科学系副教授。研究方向为数学规划、机器学习和智能技术,出版《运筹学》和《指数化投资》等教材和专著多部。曾任中国证券业协会信息技术委员会委员。
1智能技术学基础
11大数据采集技术
12大数据存储技术
13大数据分析与挖掘技术
14大数据可视化技术
15Python基础
习题
2爬虫技术
21爬虫的相关知识体系
22Python Requests库的使用
23正则表达式的使用
24XML和HTML文件的解析
25爬虫例子
26爬虫存取文件介绍
习题
3爬虫框架
31Scrapy框架与Spider类
32Scrapy框架与CrawlSpider类
习题
4大数据存储技术
41数据存取基本文件
42PyMySQL基本功能和使用操作
43PyMongoDB基本功能和使用操作
44Redispy基本功能和使用操作
习题
5大数据分析与挖掘
51数据分析
52贝叶斯分类决策
53贝叶斯决策的Python库
54数据标准化
55案例分析
习题
6Python数据分析工具——Numpy框架
61Numpy简介
62Numpy框架的使用
63Numpy的通用函数操作
习题
7Python数据挖掘工具——Pandas
71Pandas简介
72Pandas基本数据结构
73Pandas基本功能介绍
74Pandas的数据分类
75数据分组groupby的应用
习题
8数据清洗和预处理
81数据编码问题
82数据的清洗
83数据类型转换操作
84字符串的操作
85时序数据处理
练习
9数据可视化
91Python可视化库介绍
92Python的可视化模块Tkinter
93Matplotlib绘图库
94Tkinter与Matplotlib的集成
习题