python - ValueError using dask QuantileTransformer : 未知形状 (1, nan)
问题描述
我正在尝试使用 das-ml 的 QuantileTransformer
为此,我有以下 DF:
当我尝试:
从 dask_ml.preprocessing 导入 StandardScaler,QuantileTransformer,MinMaxScaler
scaler = QuantileTransformer()
scaler.fit_transform(df[['LotFrontage','LotArea']])
我收到此错误:
ValueError: 试图连接形状未知的数组 (1, nan)。强制连接通过allow_unknown_chunksized=True。
而且我找不到在哪里设置参数:allow_unknown_chunksized=True,因为在变压器中引发和错误。
如果我事先计算 df,第一个错误就会消失:
scaler = QuantileTransformer()
scaler.fit_transform(df[['LotFrontage','LotArea']].compute())
但我不知道为什么这是必要的,或者即使这是正确的做法。此外,与 StandardScaler 相比,它返回一个数组而不是数据帧。
解决方案
这是以前 Dask-ML 实现的限制。它已在https://github.com/dask/dask-ml/pull/533中修复。
推荐阅读
- python - 使用 Tensorflow 的 tf.io.gfile.exists 检查文件路径是否存在
- python - 在Python中打印出双引号有空间
- typescript - 打字稿断言条件不缩小已知联合类型
- mysql - 使用 NOLOCK 更新查询
- google-cloud-functions - 带有 Google Cloud Functions 上游请求超时的 ESPv2
- azure-devops - 每次构建增加 GitVersion
- installation - Debian 独立安装
- android - Android org.json.JSONException:id 没有值
- android - Android 设备的 MAC 虚拟机问题
- java - 如何在没有编码的情况下使用 json 响应发送二进制数据?