gpt4 book ai didi

python - If 语句在 dask 数组上

转载 作者:太空宇宙 更新时间:2023-11-04 00:09:52 24 4
gpt4 key购买 nike

大家好,你能告诉我为什么 dask 数组上的 If 语句这么慢以及如何解决它吗?

import dask.array as da
import time

x = da.random.binomial(1, 0.5, 200, 200)
s = time.time()
if da.any(x):
e = time.time()
print('duration = ', e-s)

output: duration = 0.368

最佳答案

默认情况下,Dask 数组是惰性的,因此在您调用数组上的 .compute() 之前不会发生任何工作。

在您的情况下,当您将 dask 数组放入 if 语句时,您隐式调用了 .compute(),该语句将事物转换为 bool 值。

x = da.random.random(...)  # this is free
y = x + x.T # this is free
z = y.any() # this is free

if z: # everything above happens now,
...

关于python - If 语句在 dask 数组上,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52936939/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com