在 Dask 数据框操作中引用新创建的列

Referring newly created column in Dask data frame operations

ddf['tx_code'] = ddf.apply(setTxCode,axis=1)

ddf = ddf.groupby(['CUST_ID','tx_code']).agg({'TRAN_AMT':sum})

ddf = ddf[ddf.tx_code=='SLIP']

df = ddf.compute()

第三次操作时出现错误 DataFrame 对象没有属性 tx_code

当您执行 groupby().agg() 时,您通常会得到一个数据框,其中包含分组列条目作为索引,而不是列。这与 pandas 的行为相同。如果想select一个作为列,可以df.reset_index(),也可以直接引用索引;在这种情况下,我更喜欢前者,因为多索引很难处理:

ddf['tx_code'] = ddf.apply(setTxCode,axis=1)

ddf = ddf.groupby(['CUST_ID','tx_code']).agg({'TRAN_AMT':sum}).reset_index()

ddf = ddf[ddf.tx_code=='SLIP]

df = ddf.compute()