Python数据分析与实践(浙江省普通高校十三五新形态教材)/大数据与人工智能技术丛书
全新正版 极速发货
¥
43.14
7.3折
¥
59
全新
库存2件
作者编者:柳毅
出版社清华大学
ISBN9787302515791
出版时间2019-08
装帧其他
开本其他
定价59元
货号30668814
上书时间2024-06-09
商品详情
- 品相描述:全新
- 商品描述
-
目录
第1章Python简介
1.1Python语言的发展史
1.1.1Python语言的特点
1.1.2Python 2与Python 3的区别
1.2Python的环境搭建
1.3开始使用Python IDLE
1.3.1交互方式
1.3.2Python的集成开发环境
1.4Eclipse+PyDev的安装
1.5代码风格
1.6使用帮助
本章小结
习题
第2章Python语言基础知识
2.1标识符与变量
2.1.1标识符
2.1.2变量
2.2数据类型及运算
2.2.1数据类型
2.2.2运算符和表达式
2.3分支结构控制语句
2.3.1if语句
2.3.2ifelse语句
2.3.3ifelifelse语句
2.4循环语句
2.4.1循环结构控制语句
2.4.2循环嵌套控制语句
2.4.3break语句和continue语句
2.4.4range()函数
2.5常见的Python函数
本章小结
习题
第3章数据结构与函数设计
3.1序列
3.1.1列表
3.1.2元组
3.1.3字符串
3.1.4列表与元组之间的转换
3.2字典
3.2.1创建字典
3.2.2字典的方法
3.2.3列表、元组与字典之间的转换
3.3集合
3.3.1集合的创建
3.3.2集合的运算
3.3.3集合的方法
3.4函数的定义
3.4.1函数的调用
3.4.2形参与实参
3.4.3函数的返回
3.4.4位置参数
3.4.5默认参数与关键字参数
3.4.6可变长度参数
本章小结
习题
第4章类与对象
4.1面向对象
4.1.1面向对象编程
4.1.2类的抽象与封装
4.2认识Python中的类、对象和方法
4.2.1类的定义与创建
4.2.2构造函数
4.3类的属性
4.3.1类属性和实例属性
4.3.2公有属性和私有属性
4.4类的方法
4.4.1类方法的调用
4.4.2类方法的分类
4.4.3析构函数
4.5类的继承
4.5.1父类与子类
4.5.2继承的语法
4.5.3多重继承
4.5.4运算符的重载
4.6类的组合
4.7类的异常处理
4.7.1异常
4.7.2Python中的异常类
4.7.3捕获与处理异常
4.7.4自定义异常类
4.7.5with语句
4.7.6断言
本章小结
习题
案例
第5章Python数据分析基础库
5.1NumPy
5.1.1ndarray的数据类型
5.1.2数组和标量之间的运算
5.1.3索引和切片
5.1.4数组转置和轴对换
5.1.5利用数组进行数据处理
5.1.6数学和统计方法
5.2Pandas
5.2.1Pandas数据结构
5.2.2Pandas文件操作
5.2.3数据处理
5.2.4层次化索引
5.2.5分级顺序
5.2.6使用DataFrame的列
5.3Matplotlib
5.3.1figure和subplot
5.3.2调整subplot周围的间距
5.3.3颜色、标记和线型
5.3.4刻度标签和图例
5.3.5添加图例
5.3.6将图表保存到文件
5.4SciPy
5.5Scikitlearn
本章小结
习题
第6章网络数据的获取
6.1网页数据的组织形式
6.1.1HTML
6.1.2HTML元素
6.1.3HTML属性
6.2XML
6.2.1XML的结构和语法
6.2.2XML元素和属性
6.3利用urllib处理HTTP
6.4利用BeautifulSoup4解析HTML文档
6.4.1BeautifulSoup4中的对象
6.4.2遍历文档树
6.4.3搜索文档树
本章小结
习题
第7章文件操作
7.1文件的打开和关闭
7.1.1打开文件
7.1.2关闭文件
7.2读写文件
7.2.1从文件读取数据
7.2.2向文件写入数据
7.3文件对话框
7.3.1基于win32ui构建文件对话框
7.3.2基于tkFileDialog构建文件对话框
7.4应用实例: 文本文件的操作
本章小结
习题
第8章Python数据可视化
8.1数据可视化概念框架
8.1.1数据可视化简介
8.1.2数据可视化常用图表
8.1.3Python数据可视化环境准备
8.2绘制图表
8.2.1Matplotlib API入门
8.2.2创建图表
8.2.3图表定制
8.2.4保存图表
8.3更多高级图表及定制
8.3.1样式
8.3.2subplot子区
8.3.3图表颜色和填充
8.3.4动画
本章小结
习题
第9章数据库应用开发
9.1Python与数据库
9.1.1数据库简介
9.1.2Python数据库工作环境
9.2本地数据库SQLite
9.2.1SQLite简介
9.2.2Python内置的sqlite3模块
9.3关系型数据库
9.3.1关系型数据库基本操作与SQL
9.3.2操作MySQL
9.4非关系型数据库
9.4.1NoSQL介绍
9.4.2MongoDB
9.4.3PyMongo: MongoDB和Python
习题
第10章机器学习——有监督学习
10.1机器学习简介
10.2Python机器学习库Scikitlearn
10.3有监督学习
10.3.1线性回归
10.3.2Logistic回归分类器
10.3.3朴素贝叶斯分类器
10.3.4支持向量机
10.3.5KNN算法
10.3.6决策树
本章小结
习题
第11章机器学习——无监督学习
11.1无监督学习
11.2聚类
11.2.1相异度
11.2.2KMeans算法
11.2.3DBSCAN算法
11.3关联规则
11.3.1关联分析
11.3.2Apriori算法
11.3.3FPgrowth算法
本章小结
习题
第12章Python地理空间分析
12.1地理空间分析简介
12.1.1地理空间分析的基本概念
12.1.2地理空间分析与Python
12.2地理空间数据
12.2.1数据格式概览
12.2.2数据特征
12.2.3矢量数据
12.2.4栅格数据
12.3Python地理空间分析工具
12.3.1GeoJSON
12.3.2GDAL和OGR
12.3.3PyShp
12.3.4PIL
12.3.5GeoPandas
12.4Python分析矢量数据
12.4.1访问矢量数据
12.4.2Shapefile文件操作
12.4.3空间查询
12.4.4叠加分析
12.5Python与遥感
12.5.1访问影像文件
12.5.2影像裁剪
12.5.3重采样
12.5.4影像分类
12.6“五水共治”资源地理空间分析综合应用
本章小结
习题
内容摘要
Python是信息管理与信息系统、电子商务等信息管理类本科学生进行数据分析所需要掌握的基础性语言和分析工具,是未来学生掌握大数据分析技术的学习基础。本书共分12章,着重讲述Python语言和数据分析工具包的应用。
第1章主要介绍Python的发展历史、特点、集成开发环境、内置模块、帮助的使用等内容;第2章主要介绍Python语言的基础知识;第3章主要介绍Python中的常用数据结构,包括序列、字典、集合等,以及函数的定义和调用等;第4章主要介绍Python中类、对象和方法的相关内容;第5章主要介绍Python进行数据分析常用的NumPy、Pandas、Matplotlib、SciPy和Scikitlearn等基础库内容;第6章主要介绍网络数据获取的HTML和XML两种网页组织形式,以及urllib和BeautifulSoup4两个模块内容;第7章主要介绍文件的操作;第8章主要介绍数据可视化,以及使用Python绘制图表的知识;第9章主要介绍利用Python进行数据库应用开发;第10、11章主要介绍Python机器学习的基本概念以及有监督、无监督学习算法的原理;第12章主要介绍Python在地理空间分析上的应用。本书中的代码均在Python3.5中测试通过。
本书一方面侧重对Python数据分析基础知识的讲解,另一方面注重Python数据处理方法的应用。本书适合作为计算机科学与技术专业学生学习数据分析的入门教材,也适合作为Python爱好者的参考书。
精彩内容
第5章Python数据分析基础库本章学习目标:学习NumPy库的用法、数据结构和基本操作学习Pandas库的用法、数据结构和基本操作学习Matplotlib库的用法、数据结构和基本操作掌握SciPy库的操作、作用掌握Scikitlearn库的操作、作用本章介绍Python进行数据分析时常用的NumPy、Pandas、Matplotlib、SciPy和Scikitlearn基础库。NumPy是Python的一种开源数值计算扩展库,这种工具可用来存储和处理大型矩阵,比Python自身的嵌套列表(nestedliststructure)结构要高效许多;Pandas是基于NumPy的一种工具,该工具是为了解决数据分析任务而创建的,Pandas提供了大量的库和标准数据模型,以及高效、便捷地处理大型数据集所需的函数和方法;Matplotlib是一个Python的2D绘图库,它基于各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形;SciPy是一款方便的专为科学和工程设计的Python工具包,包括统计、优化、整合、线性代数模块、傅里叶变换、信号和图像处理以及常微分方程求解器等;Scikitlearn(简称Sklearn)是SciPy的扩展,建立在NumPy和Matplotlib库的基础之上,支持分类、回归、降维和聚类等机器学习算法。
5.1NumPyNumPy(NumericalPython的缩写)是一个开源的Python科学计算库,包含很多实用的数学函数,涵盖线性代数运算、傅里叶变换和随机数生成等功能。NumPy允许用户进行快速的交互式原型设计,可以很自然地使用数组和矩阵。它的部分功能如下。
(1)ndarray:一个具有矢量算术运算且节省空间的多维数组。
(2)用于对整组数据进行快速运算的标准数学函数(无须编写循环)。
(3)用于读/写磁盘数据的工具以及用于操作内存映射文件的工具。
(4)线性代数、随机数生成以及傅里叶变换功能。
(5)用于集成C、C++、Fortran等语言的代码编写工具。
NumPy的底层算法在设计时就有着优异的性能,对于同样的数值计算任务,使用NumPy要比直接编写Python代码便捷得多。对于大型数组的运算,使用NumPy中数组的存储效率和输入/输出性能均优于Python中等价的基本数据结构(例如嵌套的list容器)。对于TB级的大文件,NumPy使用内存映射文件来处理,以达到最优的数据读/写性能。这是因为NumPy能够直接对数组和矩阵进行操作,可以省略很多循环语句,其众多的数学函数也会让开发人员编写代码的工作轻松许多。不过NumPy数组的通用性不及Python提供的list容器,这是其不足之处。因此,在科学计算之外的领域,NumPy的优势也就不那么明显了。NumPy本身没有提供那么多高级的数据分析功能,理解NumPy数组以及面向数组的计算将有助于更加高效地使用诸如Pandas之类的工具。下面对NumPy的数据结构和操作进行介绍。
NumPy的多维数组对象ndarray是一个快速、灵活的大数据集容器。用户可以利用这种数组对象对整块数据进行数学运算,其运算跟标量元素之间的运算一样。创建ndarray数组最简单的办法就是使用array()函数。它接受一切序列型的对象(包括其他数组),然后产生一个新的、含有传入数据的NumPy数组。这里以一个列表的转换为例:In[1]:importnumpyasnpdata=[6,7.5,8,0,1]arr1=np.array(data)arr1Out[1]:array([6.,7.5,8.,0.,1.])ndarray是一个通用的同构数据多维容器,其中所有的元素必须是相同类型的。每一个数组都有一个shape(表示维度大小的数组)和一个dtype(用于说明数组数据类型的对象):In[2]:arr1.shapeOut[2]:(5,)In[3]:arr1.dtypeOut[3]:dtype(''float64'')嵌套序列(例如由一组等长列表组成的列表)将会被转换成一个多维数组:In[4]:data2=[[1,2,3,4],[5,6,7,8]]arr2=np.array(data2)arr2Out[4]:array([[1,2,3,4],[5,6,7,8]])In[5]:arr2.ndimOut[5]:2In[6]:arr2.shapeOut[6]:(2,4)除非显式说明,否则np.array()会尝试为新建的数组推断出一个较为合适的数据类型。数据类型保存在一个特殊的dtype对象中,例如上面的两个例子:In[7]:arr1.dtypeOut[7]:dtype(''float64'')In[8]:arr2.dtypeOut[8]:dtype(''int32'')除了np.array()外,还有一些函数可以新建数组,例如np.zeros()和np.ones()可以分别创建指定长度或形状的全为0或全为1的数组。Empty可以创建一个没有任何具体数值的数组。如果要用这些方法创建数组,只需传入一个表示形状的元组即可:In[9]:np.zeros(8)Out[9]:array([0.,0.,0.,0.,0.,0.,0.,0.])In[10]:np.zeros((2,4))Out[10]:array([[0.,0.,0.,0.],[0.,0.,0.,0.]])In[11]:np.empty((2,3,2))Out[11]:array([[[9.78249979e-322,0.00000000e+000],[0.00000000e+000,0.00000000e+000],[0.00000000e+000,0.00000000e+000]],[[0.00000000e+000,0.00000000e+000],[0.00000000e+000,0.00000000e+000],[0.00000000e+000,0.00000000e+000]]])在NumPy中,np.empty()会认为返回全为0的数组是不安全的,所以它会返回一些未初始化的很接近0的随机值。
ndarray的一些常用的基本数据操作函数如表5.1所示。
表5.1ndarray基本数据操作函数函数说明array()将输入数据(列表、元组、数组或其他序列类型)转换为ndarray。推断出dtype或特别指定dtype,默认直接赋值输入数据asarray()将输入转化为ndarray。如果输入本身是一个ndarray,就不再复制arange()类似于内置的range,但返回的是一个ndarray而非listones(),ones_like()根据指定的形状和dtype创建一个全1数组。ones_like以另一个数组为参数,并根据其形状和dtype创建一个全1数组zeros(),zeros_like()类似于ones()和ones_like(),只不过产生的是全0数组empty(),empty_like()创建新数组,只分配内存空间,不填充任何值
full(),full_like()用fullvalue中的所有值,根据指定的形状和dtype创建一个数组。full_like()使用另一个数组,用相同的形状和dtype创建eye(),identity()创建一个正方的N×N矩阵(对角线为1,其余为0)
— 没有更多了 —
以下为对购买帮助不大的评价