pyspark-typeerror:在spark mllib中使用onehotencoder时,无法调用“column”对象

vfhzx4xs  于 2021-05-19  发布在  Spark
关注(0)|答案(0)|浏览(520)

我是pyspark和ApacheSpark机器学习库的新手。我正在尝试将onehotencoder应用于spark mllib中的几个分类列。首先我使用了stringindexer,它可以工作。
categoricalcolumns是数据集中我的分类列的列表。

stringIndexer = StringIndexer(
    inputCols=[categoricalCol for categoricalCol in categoricalColumns],
    outputCols=[categoricalCol + "_index" for categoricalCol in categoricalColumns]
)
mod_si = stringIndexer.fit(spark_df)
indexed_si = mod_si.transform(spark_df)
indexed_si.printSchema()

下一个onehotencoder

encoder = OneHotEncoder(
    inputCols=[indexer.getOutputCol() for indexer in indexed_si],
    outputCols=["_encoded".format(indexer.getOutputCol()) for indexer in indexed_si]
)

我经常会遇到这样的错误:

TypeError: 'Column' object is not callable

我读了编程指南,但我还不能解决它。任何帮助是感激的。
https://spark.apache.org/docs/latest/ml-features.html#onehotencoder
谢谢您

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题