有时你用 Python的Pandas 打开一个大数据集,尝试获得一些指标,整个事情只是可怕地冻结。 如果您使用大数据,您知道如果您正在使用Pandas,那么您可以等待一小段时间来获得一个简单的系列平均值,让我们甚至不会调用 apply 。这只是几百万行!当你达到数十亿美元时,你最好开始使用Spark或其他东西。
我不久前发现了这个工具:一种加速Python数据分析的方法,无需获得更好的基础设施或切换语言。如果您的数据集很大,它最终会感觉有限,但它比普通的Pandas更好地扩展,并且可能只适合您的问题
特别是如果您没有进行大量的重建索引。
##
什么是dask?Dask 是一个开源项目,它为您提供NumPy Arrays,Pandas Dataframes和常规列表的抽象,允许您使用多核处理并行运行它们。
以下是教程中的摘录:
dask提供模仿NumPy,列表和Pandas的高级Array,Bag和DataFrame集合,但可以在不适合主内存的数据集上并行运行。dask的高级集合是大型数据集的NumPy和Pandas的替代品。
它听起来真棒!我开始为这篇文章尝试dask Dataframes,并对它们进行了几个基准测试。
##
阅读文档我首先做的是阅读官方文档,看看在dask中建议做什么而不是常规的Dataframes。以下是 官方文档 中的相关部分:
*** 纵大型数据集,即使这些数据集不适合内存
通过使用许多核心来加速长计算
使用标准Pandas *** 作(如groupby,join和时间序列计算)对大型数据集进行分布式计算
然后在下面,它列出了一些在使用dask Dataframes时非常快的事情:
算术运算(乘以或添加到系列)
常见聚合(平均值,最小值,最大值,总和等)
调用 apply(只要它在索引中 - 也就是说,不是在groupby('y')之后'y'不是索引 - )
调用value_counts(),drop_duplicates()或corr()
使用 loc , isin 和行方式选择进行过滤
总结以上是内存溢出为你收集整理的【数据分析】Python使用Dask Dataframes并行数据分析全部内容,希望文章能够帮你解决【数据分析】Python使用Dask Dataframes并行数据分析所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)