Мне нужно создать столбец, основанный на каком-то условии в кадре данных dask. В пандах это довольно просто:
ddf['TEST_VAR'] = ['THIS' if x == 200607 else
'NOT THIS' if x == 200608 else
'THAT' if x == 200609 else 'NONE'
for x in ddf['shop_week'] ]
Находясь в dask, я должен сделать то же самое, что и ниже:
def f(x):
if x == 200607:
y= 'THIS'
elif x == 200608 :
y= 'THAT'
else :
y= 1
return y
ddf1 = ddf.assign(col1 = list(ddf.shop_week.apply(f).compute()))
ddf1.compute()
Вопросы:
- Есть ли лучший / более простой способ добиться этого?
- Я не могу изменить первый фрейм данных ddf, мне нужно создать ddf1, чтобы изменения были в dask dataframe Неизменяемый объект?