Dask数据帧大于延迟数

Dask数据帧大于延迟数,dask,Dask,有没有办法做到这一点,但阈值作为一个延迟数 import dask import pandas as pd import dask.dataframe as dd threshold = 3 df = pd.DataFrame({'something': [1,2,3,4]}) ddf = dd.from_pandas(df, npartitions=2) ddf[ddf['something'] >= threshold] 如果阈值为: threshold = dask.dela

有没有办法做到这一点,但阈值作为一个延迟数

import dask
import pandas as pd
import dask.dataframe as dd

threshold = 3

df = pd.DataFrame({'something': [1,2,3,4]})
ddf = dd.from_pandas(df, npartitions=2)

ddf[ddf['something'] >= threshold]
如果
阈值
为:

threshold = dask.delayed(3)
它给了我:

TypeError('Truth of Delayed objects is not supported')

我想将
ddf
保留为dask数据帧,而不是将其转换为pandas数据帧。想知道是否有组合形式也采用延迟值。

Dask无法知道延迟对象中的具体值是整数,因此无法知道在操作中如何处理它(对齐、广播等)

如果您使用大小为0的数组之类的东西,一切似乎都正常

In [32]: df = dd.from_pandas(pd.DataFrame({"A": [1, 2, 3, 4]}), 2)

In [33]: threshold = da.from_array(np.array([3]))[0]

In [34]: df.A > threshold
Out[34]:
Dask Series Structure:
npartitions=2
0    bool
2     ...
3     ...
Name: A, dtype: bool
Dask Name: gt, 8 tasks

In [35]: df[df.A > threshold].compute()
Out[35]:
   A
3  4

我也是!也许你可以帮助实现它。