Dask map_partitions странное поведение ⇐ Python

Программы на Python
Anonymous
Dask map_partitions странное поведение

Сообщение Anonymous »

Когда я создаю фрейм данных dask из pandas с 1 разделом, а затем вызываю для него функцию map_partitions(), кажется, что он вызывается дважды. Если у меня 5 разделов, он вызывается 6 раз. В общем, функция вызывается 1 дополнительный раз с некоторыми неизвестными мне записями. Они не отображаются в выводе, записанном в d.
Первый вызов, кажется, связан с неизвестным мне разделом, в котором есть 2 записи. Это вызывает другие проблемы, но я пока не буду о них упоминать, чтобы описание было кратким.
Подробнее:

Код: Выделить всё

python 3.9.18
dask 2024.8.0
pandas 2.0.3

Код: Выделить всё

import pandas as pd
import dask.dataframe as dd

df = pd.DataFrame({
'a': list(range(100))
})
ddf = dd.from_pandas(df, npartitions=1)

def some_func(df):
print (df.shape)
print (df.head())
return df

ddf = ddf.map_partitions(some_func)
print (ddf.compute().shape)
Выход:

Код: Выделить всё

(2, 1)
a
0 1
1 1
(100, 1)
a
0 0
1 1
2 2
3 3
4 4
(100, 1)
Мне нужно знать, как избежать дополнительного вызова функции с незнакомыми записями

Подробнее здесь: https://stackoverflow.com/questions/790 ... -behaviour

Вернуться в «Python»