Ich muss eine Spalte erstellen, die auf einer Bedingung auf dask Dataframe basiert. In Pandas ist es ziemlich einfach:Erstellen Sie eine if-else-Bedingung Spalte in dask Dataframe
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'] ]
Während in dask I wie unten Gleiche zu tun haben:
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()
Fragen:
- Gibt es eine bessere/einfachere Art und Weise zu es erreichen?
- Ich kann den ersten Dataframe ddf nicht ändern, ich muss ddf1 erstellen, um die Änderungen zu sehen ist dask Dataframe Unveränderliches Objekt?
Die sind die Dies-Datenrahmen standardmäßig änderbar oder sind sie nach der Version 0.10.2 veränderbar? –
In der neuesten Version von Dask, Version 0.10.2, unterstützt dask.dataframes die Spaltenzuordnung – MRocklin
Danke für die Antwort @MRocklin –