Python 迭代一个dask序列(从dask序列到列表中获取唯一值)
我需要迭代dask数据帧中的唯一值。我使用.unique()来获取列的唯一值,但现在我得到了一个不能用于迭代的dask对象。我需要知道如何将这些唯一值从这个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
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