4.2 用户推荐指数
互联网
类型
8.4
豆瓣评分
可以朗读
语音朗读
386千字
字数
2018-07-01
发行日期
展开全部
主编推荐语
一本数据分析的入门必读书。
内容简介
本书由Python pandas项目创始人Wes McKinney亲笔撰写,详细介绍利用Python进行操作、处理、清洗和规整数据等方面的具体细节和基本要点。第2版针对Python 3.6进行全面修订和更新,涵盖新版的pandas、NumPy、IPython和Jupyter,并增加大量实际案例,可以帮助你高效解决一系列数据分析问题。
第2版中的主要更新包括:所有的代码,包括把Python的教程更新到了Python 3.6版本(第1版中使用的是Python 2.7);更新了Python第三方发布版Anaconda和其他所需Python包的安装指引;更新pandas库到2017年的新版;新增一章,关于更多高级pandas工具和一些使用提示;新增statsmodels和scikit-learn的简明使用介绍。
目录
- 版权信息
- 译者序
- 前言
- 第1章 准备工作
- 1.1 本书内容
- 1.1.1 什么类型的数据
- 1.2 为何利用Python进行数据分析
- 1.2.1 Python作为胶水
- 1.2.2 解决“双语言”难题
- 1.2.3 为何不使用Python
- 1.3 重要的Python库
- 1.3.1 NumPy
- 1.3.2 pandas
- 1.3.3 matplotlib
- 1.3.4 IPython与Jupyter
- 1.3.5 SciPy
- 1.3.6 scikit-learn
- 1.3.7 statsmodels
- 1.4 安装与设置
- 1.4.1 Windows
- 1.4.2 Apple(OS X和macOS)
- 1.4.3 GNU/Linux
- 1.4.4 安装及更新Python包
- 1.4.5 Python 2和Python 3
- 1.4.6 集成开发环境和文本编辑器
- 1.5 社区和会议
- 1.6 快速浏览本书
- 1.6.1 代码示例
- 1.6.2 示例数据
- 1.6.3 导入约定
- 1.6.4 术语
- 第2章 Python语言基础、IPython及Jupyter notebook
- 2.1 Python解释器
- 2.2 IPython基础
- 2.2.1 运行IPython命令行
- 2.2.2 运行Jupyter notebook
- 2.2.3 Tab补全
- 2.2.4 内省
- 2.2.5 %run命令
- 2.2.6 执行剪贴板中的程序
- 2.2.7 终端快捷键
- 2.2.8 关于魔术命令
- 2.2.9 matplotlib集成
- 2.3 Python语言基础
- 2.3.1 语言语义
- 2.3.2 标量类型
- 2.3.3 控制流
- 第3章 内建数据结构、函数及文件
- 3.1 数据结构和序列
- 3.1.1 元组
- 3.1.2 列表
- 3.1.3 内建序列函数
- 3.1.4 字典
- 3.1.5 集合
- 3.1.6 列表、集合和字典的推导式
- 3.2 函数
- 3.2.1 命名空间、作用域和本地函数
- 3.2.2 返回多个值
- 3.2.3 函数是对象
- 3.2.4 匿名(Lambda)函数
- 3.2.5 柯里化:部分参数应用
- 3.2.6 生成器
- 3.2.7 错误和异常处理
- 3.3 文件与操作系统
- 3.3.1 字节与Unicode文件
- 3.4 本章小结
- 第4章 NumPy基础:数组与向量化计算
- 4.1 NumPy ndarray:多维数组对象
- 4.1.1 生成ndarray
- 4.1.2 ndarray的数据类型
- 4.1.3 NumPy数组算术
- 4.1.4 基础索引与切片
- 4.1.5 布尔索引
- 4.1.6 神奇索引
- 4.1.7 数组转置和换轴
- 4.2 通用函数:快速的逐元素数组函数
- 4.3 使用数组进行面向数组编程
- 4.3.1 将条件逻辑作为数组操作
- 4.3.2 数学和统计方法
- 4.3.3 布尔值数组的方法
- 4.3.4 排序
- 4.3.5 唯一值与其他集合逻辑
- 4.4 使用数组进行文件输入和输出
- 4.5 线性代数
- 4.6 伪随机数生成
- 4.7 示例:随机漫步
- 4.7.1 一次性模拟多次随机漫步
- 4.8 本章小结
- 第5章 pandas入门
- 5.1 pandas数据结构介绍
- 5.1.1 Series
- 5.1.2 DataFrame
- 5.1.3 索引对象
- 5.2 基本功能
- 5.2.1 重建索引
- 5.2.2 轴向上删除条目
- 5.2.3 索引、选择与过滤
- 5.2.4 整数索引
- 5.2.5 算术和数据对齐
- 5.2.6 函数应用和映射
- 5.2.7 排序和排名
- 5.2.8 含有重复标签的轴索引
- 5.3 描述性统计的概述与计算
- 5.3.1 相关性和协方差
- 5.3.2 唯一值、计数和成员属性
- 5.4 本章小结
- 第6章 数据载入、存储及文件格式
- 6.1 文本格式数据的读写
- 6.1.1 分块读入文本文件
- 6.1.2 将数据写入文本格式
- 6.1.3 使用分隔格式
- 6.1.4 JSON数据
- 6.1.5 XML和HTML:网络抓取
- 6.2 二进制格式
- 6.2.1 使用HDF5格式
- 6.2.2 读取Microsoft Excel文件
- 6.3 与Web API交互
- 6.4 与数据库交互
- 6.5 本章小结
- 第7章 数据清洗与准备
- 7.1 处理缺失值
- 7.1.1 过滤缺失值
- 7.1.2 补全缺失值
- 7.2 数据转换
- 7.2.1 删除重复值
- 7.2.2 使用函数或映射进行数据转换
- 7.2.3 替代值
- 7.2.4 重命名轴索引
- 7.2.5 离散化和分箱
- 7.2.6 检测和过滤异常值
- 7.2.7 置换和随机抽样
- 7.2.8 计算指标/虚拟变量
- 7.3 字符串操作
- 7.3.1 字符串对象方法
- 7.3.2 正则表达式
- 7.3.3 pandas中的向量化字符串函数
- 7.4 本章小结
- 第8章 数据规整:连接、联合与重塑
- 8.1 分层索引
- 8.1.1 重排序和层级排序
- 8.1.2 按层级进行汇总统计
- 8.1.3 使用DataFrame的列进行索引
- 8.2 联合与合并数据集
- 8.2.1 数据库风格的DataFrame连接
- 8.2.2 根据索引合并
- 8.2.3 沿轴向连接
- 8.2.4 联合重叠数据
- 8.3 重塑和透视
- 8.3.1 使用多层索引进行重塑
- 8.3.2 将“长”透视为“宽”
- 8.3.3 将“宽”透视为“长”
- 8.4 本章小结
- 第9章 绘图与可视化
- 9.1 简明matplotlib API入门
- 9.1.1 图片与子图
- 9.1.2 颜色、标记和线类型
- 9.1.3 刻度、标签和图例
- 9.1.4 注释与子图加工
- 9.1.5 将图片保存到文件
- 9.1.6 matplotlib设置
- 9.2 使用pandas和seaborn绘图
- 9.2.1 折线图
- 9.2.2 柱状图
- 9.2.3 直方图和密度图
- 9.2.4 散点图或点图
- 9.2.5 分面网格和分类数据
- 9.3 其他Python可视化工具
- 9.4 本章小结
- 第10章 数据聚合与分组操作
- 10.1 GroupBy机制
- 10.1.1 遍历各分组
- 10.1.2 选择一列或所有列的子集
- 10.1.3 使用字典和Series分组
- 10.1.4 使用函数分组
- 10.1.5 根据索引层级分组
- 10.2 数据聚合
- 10.2.1 逐列及多函数应用
- 10.2.2 返回不含行索引的聚合数据
- 10.3 应用:通用拆分-应用-联合
- 10.3.1 压缩分组键
- 10.3.2 分位数与桶分析
- 10.3.3 示例:使用指定分组值填充缺失值
- 10.3.4 示例:随机采样与排列
- 10.3.5 示例:分组加权平均和相关性
- 10.3.6 示例:逐组线性回归
- 10.4 数据透视表与交叉表
- 10.4.1 交叉表:crosstab
- 10.5 本章小结
- 第11章 时间序列
- 11.1 日期和时间数据的类型及工具
- 11.1.1 字符串与datetime互相转换
- 11.2 时间序列基础
- 11.2.1 索引、选择、子集
- 11.2.2 含有重复索引的时间序列
- 11.3 日期范围、频率和移位
- 11.3.1 生成日期范围
- 11.3.2 频率和日期偏置
- 11.3.3 移位(前向和后向)日期
- 11.4 时区处理
- 11.4.1 时区的本地化和转换
- 11.4.2 时区感知时间戳对象的操作
- 11.4.3 不同时区间的操作
- 11.5 时间区间和区间算术
- 11.5.1 区间频率转换
- 11.5.2 季度区间频率
- 11.5.3 将时间戳转换为区间(以及逆转换)
- 11.5.4 从数组生成PeriodIndex
- 11.6 重新采样与频率转换
- 11.6.1 向下采样
- 11.6.2 向上采样与插值
- 11.6.3 使用区间进行重新采样
- 11.7 移动窗口函数
- 11.7.1 指数加权函数
- 11.7.2 二元移动窗口函数
- 11.7.3 用户自定义的移动窗口函数
- 11.8 本章小结
- 第12章 高阶pandas
- 12.1 分类数据
- 12.1.1 背景和目标
- 12.1.2 pandas中的Categorical类型
- 12.1.3 使用Categorical对象进行计算
- 12.1.4 分类方法
- 12.2 高阶GroupBy应用
- 12.2.1 分组转换和“展开”GroupBy
- 12.2.2 分组的时间重新采样
- 12.3 方法链技术
- 12.3.1 pipe方法
- 12.4 本章小结
- 第13章 Python建模库介绍
- 13.1 pandas与建模代码的结合
- 13.2 使用Patsy创建模型描述
- 13.2.1 Patsy公式中的数据转换
- 13.2.2 分类数据与Patsy
- 13.3 statsmodels介绍
- 13.3.1 评估线性模型
- 13.3.2 评估时间序列处理
- 13.4 scikit-learn介绍
- 13.5 继续你的教育
- 第14章 数据分析示例
- 14.1 从Bitly获取1.USA.gov数据
- 14.1.1 纯Python时区计数
- 14.1.2 使用pandas进行时区计数
- 14.2 MovieLens 1M数据集
- 14.2.1 测量评价分歧
- 14.3 美国1880~2010年的婴儿名字
- 14.3.1 分析名字趋势
- 14.4 美国农业部食品数据库
- 14.5 2012年联邦选举委员会数据库
- 14.5.1 按职业和雇主的捐献统计
- 14.5.2 捐赠金额分桶
- 14.5.3 按州进行捐赠统计
- 14.6 本章小结
- 附录A 高阶NumPy
- A.1 ndarray对象内幕
- A.1.1 NumPy dtype层次结构
- A.2 高阶数组操作
- A.2.1 重塑数组
- A.2.2 C顺序和Fortran顺序
- A.2.3 连接和分隔数组
- A.2.4 重复元素:tile和repeat
- A.2.5 神奇索引的等价方法:take和put
- A.3 广播
- A.3.1 在其他轴上广播
- A.3.2 通过广播设定数组的值
- A.4 高阶ufunc用法
- A.4.1 ufunc实例方法
- A.4.2 使用Python编写新的ufunc方法
- A.5 结构化和记录数组
- A.5.1 嵌套dtype和多维字段
- A.5.2 为什么要使用结构化数组
- A.6 更多关于排序的内容
- A.6.1 间接排序:argsort和lexsort
- A.6.2 其他的排序算法
- A.6.3 数组的部分排序
- A.6.4 numpy.searchsorted:在已排序的数组寻找元素
- A.7 使用Numba编写快速NumPy函数
- A.7.1 使用Numba创建自定义numpy.ufunc对象
- A.8 高阶数组输入和输出
- A.8.1 内存映射文件
- A.8.2 HDF5和其他数组存储选择
- A.9 性能技巧
- A.9.1 连续内存的重要性
- 附录B 更多IPython系统相关内容
- B.1 使用命令历史
- B.1.1 搜索和复用命令历史
- B.1.2 输入和输出变量
- B.2 与操作系统交互
- B.2.1 shell命令及其别名
- B.2.2 目录书签系统
- B.3 软件开发工具
- B.3.1 交互式调试器
- B.3.2 对代码测时:%time和%timeit
- B.3.3 基础分析:%prun和%run-p
- B.3.4 逐行分析函数
- B.4 使用IPython进行高效代码开发的技巧
- B.4.1 重载模块依赖项
- B.4.2 代码设计技巧
- B.5 高阶IPython特性
- B.5.1 使你自定义的类对IPython友好
- B.5.2 配置文件与配置
- B.6 附录小结
- 作者介绍
- 封面介绍
展开全部
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。