经典的分享

分享 分享 分享

  1. 【2023新书】快速Python:大数据集的高性能技术, 304页pdf
    在这里插入图片描述

■ 第1章介绍了这个问题,并解释了为什么我们必须关注计算和存储的效率。它还介绍了本书的方法,并为根据你的需求浏览它提供了建议。

■ 第2章涵盖了原生Python的优化。我们还讨论了Python数据结构、代码分析、内存分配和延迟编程技术的优化。

■ 第3章讨论了Python中的并发和并行,并介绍了如何最好地利用多进程和多线程(包括使用线程进行并行处理时的限制)。

这一章还涉及了异步处理作为一种高效处理多个并发请求的方式,这种请求的工作量低,典型的是网络服务。

■ 第4章介绍了NumPy,这是一个允许你高效处理多维数组的库。NumPy是所有现代数据处理技术的核心,因此,它被视为一个基本库。这一章分享了特定的NumPy技术来开发更高效的代码,如视图、广播和数组编程。

第二部分,硬件(第5和6章),主要关注如何从常用硬件和网络中提取最大效率。

■ 第5章涵盖了Cython,这是一个超集Python,可以生成非常高效的代码。Python是一个高级的解释型语言,因此,它不是为硬件优化的。有几种语言,如C或Rust,是设计来在硬件层面尽可能高效的。

Cython属于这类语言:虽然它非常接近Python,但它编译成C代码。生成最高效的Cython代码需要注意代码如何映射到高效的实现。在这一章中,我们学习如何创建高效的Cython代码。

■ 第6章讨论了现代硬件架构对设计高效Python代码的影响。考虑到现代计算机的设计方式,一些反直觉的编程方法可能比预期的更高效

。例如,在某些情况下,处理压缩数据可能比处理未压缩数据更快,即使我们需要支付解压缩算法的代价。

这一章还涵盖了CPU、内存、存储和网络对Python算法设计的影响。我们讨论NumExpr,一个可以通过使用现代硬件架构的属性使NumPy代码更高效的库。

第三部分,现代数据处理的应用和库(第7和8章),看看在现代数据处理中使用的典型应用和库。

■ 第7章集中讨论如何尽可能高效地使用pandas,这是Python中使用的数据帧库。我们将看到与pandas相关的技术来优化代码。与本书中的大多数章节不同,这一章是基于之前的章节建立的。

pandas是基于NumPy的,所以我们将从第4章中学到的内容中提取,并发现与NumPy相关的技术来优化pandas。

我们还探讨如何使用NumExpr和Cython优化pandas。最后,我介绍Arrow,这是一个库,它可以用来提高处理pandas数据帧的性能。

■ 第8章研究数据持久性的优化。我们讨论Parquet,一个可以高效处理列式数据的库,以及Zarr,它可以处理非常大的磁盘数组。我们还开始讨论如何处理比内存大的数据集。

第四部分,高级主题(第9和10章),处理两个最后的、非常不同的方法:使用GPU和使用Dask库。

■ 第9章看看如何使用图形处理单元(GPUs)来处理大数据集。我们将看到GPU计算模型——使用许多简单的处理单元——非常适合处理现代数据科学问题。我们使用两种不同的方法来利用GPU。

首先,我们将讨论提供与你所知的库类似的接口的现有库,如CuPy作为NumPy的GPU版本。其次,我们将讨论如何从Python生成运行在GPU上的代码。

■ 第10章讨论Dask,这是一个允许你编写并行代码的库,它可以扩展到许多机器——无论是在本地还是在云中——同时提供与NumPy和pandas类似的熟悉接口。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值