【数据分析】Python使用Dask Dataframes并行数据分析

2021/6/29 20:20:43

本文主要是介绍【数据分析】Python使用Dask Dataframes并行数据分析,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

有时你用 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()

  • 使用 locisin 和行方式选择进行过滤



这篇关于【数据分析】Python使用Dask Dataframes并行数据分析的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程