如何在 dask 中设置预处理管道?

问题描述

我整天都在 dask 的网站上,但它仍然不适合我。

我有数据框,不同的列需要不同的预处理:

pipe = make_pipeline(
    OneHotEncoder(),LabelEncoder(),QuantileTransformer(n_quantiles=20,output_distribution='uniform')
    )

pipe.fit(df[['Exchange','CurrencyCode']],df[['ticker','year']],df['revenue','expenses'])

这是我正在做的一个例子。我正在尝试采用不同的列并以不同的方式对待它们。但是在执行上述操作时出现此错误

TypeError: fit() takes from 2 to 3 positional arguments but 4 were given

我尝试做的另一件事是 ColumnTransformer:

ct = ColumnTransformer(
[("norm1",OneHotEncoder(),['Exchange','CurrencyCode']),("norm2",StandardScaler(),['revenue','expenses'])
 ])
ct.fit_transform(main_dataframe)

我收到此错误

NotImplementedError: `df.column.cat.categories` with unkNown categories is not supported.  Please use `column.cat.as_kNown()` or `df.categorize()` beforehand to ensure kNown categories

我很困惑这样做的正确方法是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)