<<返回python首页 python

《Python 应用案例》

Dask Array

DASK

Dask中的array对象了将许多个Numpy array对象组合进一个网格(Grid),可以支持大部分的Numpy方法。以便进行并行计算。

array-dask-python

安装dask array组件

!pip3 install dask[array] -i https://pypi.tuna.tsinghua.edu.cn/simple

创建随机数Array

这将创建一个1000x1000的随机数dask Array ,该dask array的shape为(1000,1000)。它是由10x10的个numpy arry对象组成的(如果无法均匀划分,则为较小的数组)。即有100个numpy array组成,每个numpy array的shape为100x100。在Dask Array中,一个numpy array对象被称为一个chunk。每个chunk会对应一个Task,用于执行并行计算。

import dask.array as da
x = da.random.random((1000, 1000), chunks=(100,100))
x

使用Numpy语法即可操作

y = x + x.T
z = y[::2, 500:].mean(axis=1)
z

当您希望将返回结果为NumPy的数组时调用.compute()

z.compute()

在内存中持久化数据

%time y[0, 0].compute()
%time y.sum().compute()

如果您的数据集有充足的RAM时,则可以将数据保留在内存中。这样可以使以后的计算速度更快。

可以对比持久化前后的速度

y = y.persist()
%time y[0, 0].compute()
%time y.sum().compute()
移动端设备除iPad Pro外,其它移动设备仅能阅读基础的文本文字。
建议使用PC或笔记本电脑,浏览器使用Chrome或FireFox进行浏览,以开启左侧互动实验区来提升学习效率,推荐使用的分辨率为1920x1080或更高。
我们坚信最好的学习是参与其中这一理念,并致力成为中文互联网上体验更好的学练一体的IT技术学习交流平台。
您可加QQ群:575806994,一起学习交流技术,反馈网站使用中遇到问题。
内容、课程、广告等相关合作请扫描右侧二维码添加好友。

狐狸教程 Copyright 2021

进入全屏