Python 迭代一个dask序列(从dask序列到列表中获取唯一值)

Python 迭代一个dask序列(从dask序列到列表中获取唯一值),python,dask,Python,Dask,我需要迭代dask数据帧中的唯一值。我使用.unique()来获取列的唯一值,但现在我得到了一个不能用于迭代的dask对象。我需要知道如何将这些唯一值从这个dask对象中提取到一个列表(或类似的东西)中,这样我就可以使用这些值来迭代dask数据帧 df = dd.read_csv('file.csv') df.column1.unique() for unique_value in column1_array: print(unique_value) 这是我得到的错误: NotImpl

我需要迭代dask数据帧中的唯一值。我使用.unique()来获取列的唯一值,但现在我得到了一个不能用于迭代的dask对象。我需要知道如何将这些唯一值从这个dask对象中提取到一个列表(或类似的东西)中,这样我就可以使用这些值来迭代dask数据帧

df = dd.read_csv('file.csv')
df.column1.unique()
for unique_value in column1_array:
    print(unique_value)
这是我得到的错误:
NotImplementedError:Series getitem in仅支持具有匹配分区结构的其他Series对象

您可以使用
.compute()
方法将Dask系列转换为Pandas系列对象,然后对其进行迭代

for x in s.compute():
    ...


还有
iteritems
iterrows
方法

此问题已在dask=2.3中解决

In [1]: import pandas as pd
   ...: import dask.dataframe as dd
   ...: import dask

In [2]: dask.__version__
Out[2]: '2.3.0'

In [3]: df = pd.DataFrame({"temp1":[1,2,2,4],"temp2":[1,2,2,4]})
   ...: ddf = dd.from_pandas(df,npartitions=2)
   ...: for unique_value in ddf.temp1.unique():
   ...:     print(unique_value)
   ...:     
1
2
4