• 极速Python:高性能编码、计算与数据分析9787302656296
  • 极速Python:高性能编码、计算与数据分析9787302656296
21年品牌 40万+商家 超1.5亿件商品

极速Python:高性能编码、计算与数据分析9787302656296

正版二手图书,可开发票,请放心购买。

17.58 2.2折 79.8 九品

仅1件

广东广州
认证卖家担保交易快速发货售后保障

作者[美] 蒂亚戈·罗德里格斯·安道(Tiago Rodrigues Antao)

出版社清华大学出版社

ISBN9787302656296

出版时间2024-03

装帧平装

开本16开

定价79.8元

货号1777531962178262016

上书时间2025-01-04

亿临书店

四年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:九品
商品描述
作者简介
Tiago Rodrigues Antão拥有信息学工程学士学位和生物信息学博士学位。他目前从事生物技术工作,使用Python生态来处理科学计算和数据工程任务。大多数时候,他也使用底层编程语言(如C和Rust)对算法的关键部分进行优化。目前,他在基于Amazon AWS的云计算设备上进行开发,但使用的基本是本地计算集群。
除了业内经历,他在科学计算方面有两段学术经历,包括在剑桥大学和牛津大学从事数据分析博士后研究工作。作为蒙大拿大学的研究员,他从零开始创建了用于分析生物数据的整套科学计算方法。
Tiago是重要生物信息软件包Biopython(用Python编写)的共同作者之一,也是Bioinformatics with Python Cookbook(Packt出版社,2022)一书的作者,该书已出版了第3版。他还在生物信息学领域发表了多篇重要的科...
(展开全部)

目录
目    录
第Ⅰ部分  基础知识
第1章  对高效数据处理的迫切需求3
1.1  数据泛滥的严重性4
1.2  现代计算架构和高性能计算6
1.2.1  计算机内部的变化7
1.2.2  网络的变化8
1.2.3  云计算9
1.3  Python的局限性10
1.4  解决方案小结11
1.5  本章小结13
第2章  发挥内置功能的最高性能15
2.1  分析同时具有IO和计算
任务的应用程序16
2.1.1  下载数据并计算最低温度16
2.1.2  Python的内置分析模块18
2.1.3  使用本地缓存19
2.2  对代码进行分析以检测性能瓶颈20
2.2.1  可视化分析信息21
2.2.2  行分析22
2.2.3  代码分析小结23
2.3  优化基本数据结构:列表、集合、字典24
2.3.1  列表搜索的性能25
2.3.2  使用集合进行搜索25
2.3.3  Python中的列表、集合和字典的复杂性26
2.4  节约内存27
2.4.1  Python内存估算28
2.4.2  其他表示方法的内存占用30
2.4.3  使用数组进行紧凑表示32
2.4.4  串联知识点:估算Python对象的内存占用33
2.4.5  Python对象内存占用小结34
2.5  在大数据管道中使用惰性编程和生成器34
2.6  本章小结36
第3章  并发、并行和异步37
3.1  编写异步服务器框架39
3.1.1  实现与客户通信的框架41
3.1.2  协程42
3.1.3  使用简单的同步客户端发送复杂数据43
3.1.4  实现进程间通信的其他方法44
3.1.5  异步编程小结45
3.2  实现基本的MapReduce引擎45
3.2.1  理解MapReduce框架45
3.2.2  开发简单的测试场景46
3.2.3  第一次实现MapReduce框架47
3.3  实现MapReduce并发引擎47
3.3.1  使用concurrent.futures实现线程服务器47
3.3.2  使用futures异步执行49
3.3.3  GIL和多线程51
3.4  使用多进程实现MapReduce52
3.4.1  基于concurrent.futures的解决方案52
3.4.2  基于多进程模块的解决方案53
3.4.3  监控多进程方法的进度54
3.4.4  分块传输数据56
3.5  知识点串联:异步多线程和多进程MapReduce 服务器59
3.5.1  创建完整的高性能解决方案59
3.5.2  创建强大且稳定的服务器62
3.6  本章小结63
第4章  高性能NumPy65
4.1  理解NumPy的性能66
4.1.1  数组的副本与视图66
4.1.2  NumPy的视图机制71
4.1.3  利用视图提高效率75
4.2  数组编程77
4.2.1  小结78
4.2.2  NumPy中的广播78
4.2.3  应用数组编程80
4.2.4  矢量化计算82
4.3  改进NumPy内部架构85
4.3.1  NumPy的依赖关系85
4.3.2  在Python发行版中调整NumPy87
4.3.3  NumPy中的线程88
4.4  本章小结89
第Ⅱ部分  硬件
第5章  使用Cython重构核心代码93
5.1  重构高效代码的方法93
5.2  Cython快速入门95
5.2.1  Cython实现95
5.2.2  使用Cython注释提高性能97
5.2.3  为什么注释可以提升性能98
5.2.4  为函数返回值添加类型100
5.3  分析Cython代码101
5.3.1  使用Python的内置分析方法101
5.3.2  使用line_profiler103
5.4  用Cython内存视图优化数组访问105
5.4.1  小结107
5.4.2  清理Python内部交互107
5.5  在Cython中编写NumPy通用函数108
5.6  Cython高级数组访问110
5.6.1  绕过GIL并同时运行多个线程112
5.6.2  基本性能分析116
5.6.3  使用Quadlife的视频示例116
5.7  Cython并行计算117
5.8  本章小结118
第6章  内存层级、存储和网络121
6.1  现代硬件架构如何影响Python性能122
6.1.1  现代架构对性能的反直觉影响122
6.1.2  CPU缓存如何影响算法效率123
6.1.3  现代持久化存储124
6.1.4  小结125
6.2  使用Blosc进行高效
数据存储125
6.2.1  压缩数据以节省时间125
6.2.2  读取速度(和内存缓冲区)127
6.2.3  不同压缩算法对存储性能的影响128
6.2.4  探究数据表示以提高压缩率128
6.2.5  小结129
6.3  使用NumExpr加速NumPy129
6.3.1  快速表达式处理129
6.3.2  硬件架构的影响130
6.3.3  不适合NumExpr的场景131
6.4  本地网络对性能的影响131
6.4.1  REST低效的原因132
6.4.2  基于UDP和msgpack的
客户端132
6.4.3  基于UDP的服务器134
6.4.4  为客户端添加超时机制135
6.4.5  优化网络计算的其他建议135
6.5  本章小结136
第Ⅲ部分  和于现代数据处理的应用和库
第7章  高性能pandas和Apache Arrow139
7.1  优化数据加载的内存和时间140
7.1.1  压缩数据与未压缩数据140
7.1.2  推断列的类型141
7.1.3  数据类型精度的影响143
7.1.4  重新编码和压缩数据144
7.2  高效数据分析方法147
7.2.1  使用索引加速访问147
7.2.2  行的迭代方法148
7.3  基于NumPy、Cython和NumExpr的pandas150
7.3.1  显式使用NumPy151
7.3.2  基于NumExpr的pandas151
7.3.3  Cython和pandas153
7.4  使用Arrow将数据读入pandas154
7.4.1  pandas和Apache Arrow的关系155
7.4.2  读取CSV文件156
7.4.3  使用Arrow进行分析158
7.5  使用Arrow互操作将任务委托给更高效的语言和系统158
7.5.1  Arrow语言互操作架构的意义159
7.5.2  使用Arrow的Plasma服务器对数据进行零拷贝操作160
7.6  本章小结163
第8章  大数据存储165
8.1  访问文件的统一接口:fsspec165
8.1.1  使用fsspec搜索GitHub仓库中的文件166
8.1.2  使用fsspec检查zip文件167
8.1.3  使用fsspec访问文件168
8.1.4  使用URL链遍历不同的文件系统168
8.1.5  替换文件系统后端169
8.1.6  使用PyArrow接口169
8.2  Parquet:高效的列型数据存储格式170
8.2.1  检查Parquet元数据170
8.2.2  使用Parquet进行列编码171
8.2.3  对数据集进行分区173
8.3  使用传统方法处理大于内存的数据集175
8.3.1  使用NumPy对文件进行内存映射175
8.3.2  数据帧的分块读取和写入177
8.4  使用Zarr进行大型数组持久化178
8.4.1  Zarr的内部架构179
8.4.2  Zarr中数组的存储181
8.4.3  创建新数组183
8.4.4  Zarr数组的并行读写184
8.5  本章小结186
第Ⅳ部分  高级主题
第9章  使用GPU进行数据分析189
9.1  理解GPU算力190
9.1.1  GPU的优势190
9.1.2  CPU和GPU的关系192
9.1.3  GPU的内部架构193
9.1.4  软件架构194
9.2  使用Numba生成GPU代码194
9.2.1  安装Python的GPU软件194
9.2.2  使用Numba进行GPU编程的基础知识195
9.2.3  使用GPU重构Mandelbrot示例198
9.2.4  使用NumPy编写Mandelbrot代码200
9.3  GPU代码性能分析:CuPy程序案例201
9.3.1  基于GPU的数据分析库202
9.3.2  使用CuPy:NumPy基于GPU202
9.3.3  CuPy基本操作202
9.3.4  使用Numba编写Mandelbrot生成器203
9.3.5  使用CUDA C实现Mandelbrot生成器205
9.3.6  GPU代码分析工具206
9.4  本章小结209
第10章  使用Dask分析大数据211
10.1  Dask的执行模型212
10.1.1  用于比较的pandas基线212
10.1.2  实现基于Dask的数据帧解决方案213
10.2  Dask操作的计算开销215
10.2.1  处理数据分区216
10.2.2  中间计算持久化217
10.2.3  分布式数据帧上的算法实现218
10.2.4  重新对数据进行分区220
10.2.5  分布式数据帧持久化223
10.3  使用Dask的分布式调度器224
10.3.1  dask.distributed架构225
10.3.2  使用dask.distributed运行代码228
10.3.3  处理大于内存的数据集232
10.4  本章小结234
附录A  搭建环境235
附录B  使用Numba生成高效的底层代码239

内容摘要
《极速Python:高性能编码、计算与数据分析》直击Python编程要害。对于大型数据项目,过慢的代码运行速度是毁灭性的。在机器学习和大规模数据分析中,除了使用高性能的Python代码,还要使用经过优化的库、发挥计算机硬件的多核处理能力。满足计算速度后,还要优化计算资源、控制计算成本,而本书为读者提供了一整套高性能编程解决方案。
《极速Python:高性能编码、计算与数据分析》系统性地介绍了Python高性能编程的各种工具和方法,并重点讲解了Python在大数据中的应用。书中配有清晰的示例和详实的分析,可帮助读者熟练掌握NumPy和Pandas,实现高性能的数据存储和I/O。本书高屋建瓴、不留遗漏,读者学习本书后,能从代码到架构对系统进行整体优化。

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP