处理超大型数据的17个策略

本文提供了处理大数据的策略,强调如果可能,优先使用pandas。建议包括使用pandas内置的矢量化函数,避免嵌套循环,有效地使用数据类型,利用numba和Dask进行并行计算,以及关注如Modin、Jax和Rapids cuDF等工具,以应对不同规模的数据处理需求。
摘要由CSDN通过智能技术生成

原文出处:Medium
作者:Jeff Hale
原文标题:17 Strategies for Dealing with Data, Big Data, and Even Bigger Data

处理大数据很棘手。没有人喜欢内存不足的错误,没有人喜欢等待代码长时间运行,没有人喜欢离开Python。

Python是数据科学领域最流行的语言,Numpy和Pandas是进行数值计算和数据分析的主要工具。

不幸的是,如果你在本地工作,pandas可以处理的数据量受计算机内存的限制。如果你在云端工作,更多的内存会花费更多的钱。

不管你的代码在哪里运行,你都希望操作能快速发生,这样你就可以完成任务。

在本文中,我将提供一些技巧,并介绍强大的工具(三方库),以帮助您使用Python高效地处理大数据。

基础原则

如果您曾经听到或看到过关于加速代码的建议,那么您已经看到了警告:不要过早优化!这是个好建议。但了解技术也很重要,这样你就可以在一开始就编写干净快速的代码。

对于任何大小的数据集,都建议采用以下3个策略:

  1. 尽可能避免嵌套循环。循环嵌套会导致计算时间呈多项式增长,如果您有多个项目要搜索,将等待一段时间。
  2. 在Python中尽可能使用列表推导。与按需加载列表时重复加载列表的响应相比,创建溢出列表的速度更快。但是,一般来说,不要为了速度而牺牲代码可读性,所以要小心使用嵌套列表推导。
  3. 在pandas中,使用内置的矢量化函数,其原理与列表推导相似。一次将一个函数应用于整
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值