Разнесение в стиле SQL в столбцы Dask Series или DataFrame - PullRequest
0 голосов
/ 29 октября 2018

У меня есть серия Dask, которая содержит столбец со списком значений. Я хочу выполнить разнесение в стиле SQL, чтобы создать новую строку для каждого значения индекса и соответствующего элемента списка. Для этой конкретной проблемы все списки имеют одинаковую длину.

Пример одной строки:

индекс столбец
123 [значение1, значение2, значение3]

Желаемое преобразование:

индекс столбец
123 значение1
123 значение2
123 значение3

Буду очень признателен за любые советы, как этого добиться.

1 Ответ

0 голосов
/ 29 октября 2018

На фрейме данных панд это может выглядеть как

df.column.apply(pd.Series, 1).stack().reset_index(level=1, drop=True)

Чтобы сделать это с фреймом данных Dask, вам нужно будет использовать map_partitions , чтобы сделать то же самое для каждого раздела данных:

def func(df):
    return df.column.apply(pd.Series, 1).stack().reset_index(level=1, drop=True)
df.map_partitions(func)
...