导入 OneHotEncoderEstimator 时出错

问题

你已将笔记本从用于机器学习的 Databricks Runtime 6.4 或更低版本迁移到用于机器学习的 Databricks Runtime 7.3 或更高版本。

你正在尝试导入 OneHotEncoderEstimator,但遇到导入错误。

ImportError: cannot import name 'OneHotEncoderEstimator' from 'pyspark.ml.feature' (/databricks/spark/python/pyspark/ml/feature.py)

原因

在 Apache Spark 3.0 中,OneHotEncoderEstimator 已重命名为 OneHotEncoder

解决方案

你必须将笔记本中的 OneHotEncoderEstimator 引用替换为 OneHotEncoder

例如,下面的示例代码在用于机器学习的 Databricks Runtime 7.3 或更高版本中返回一个导入错误:

from pyspark.ml.feature import OneHotEncoderEstimator

下面的示例代码在用于机器学习的 Databricks Runtime 7.3 或更高版本中正常运行:

from pyspark.ml.feature import OneHotEncoder