将 dask 系列转换为值列表

Convert a dask series to a list of values

有没有办法将系列从 dask 数据框转换为列表,以便对其进行迭代?

到目前为止我有:

ddf = dd.read_csv(MY_FILE)
s = ddf.iloc[:,[0]]
r = s.compute()
r.a_column.values

谢谢!

inline for句怎么样?你可以创建新的可迭代对象

您可以使用 values 属性获取 Dataframe 的值。

ddf = dd.read_csv(MY_FILE)
s = ddf.iloc[:,[0]]
r = s.compute()
print([i[0] for i in r.values])

一般来说,最好尽可能避免遍历行(而是使用向量化操作),请参阅 here。但是,如果对该行的元素执行的操作独立于相邻行,那么在 dask 中最简单的做法是 .map_partition:

def myfunc(df):
    # apply row operations assuming df is a pandas df
    for index, row in df.iterrows():
        # do something
        something = 'some_value'
    return something

r = ddf.map_partitions(myfunc)