Pyspark 使用Python在Databricks中增强XGBoost

Pyspark 使用Python在Databricks中增强XGBoost,pyspark,xgboost,databricks,Pyspark,Xgboost,Databricks,因此,最近我一直在使用Mlib Databricks群集,并看到我的群集版本(5.1)可以使用“根据文档”。这个集群正在运行Python 2 我觉得XGBoost4J只适用于Scala和Java所以我的问题是:如何将xgboost模块导入到这个环境中而不丢失分发功能? 下面是我的代码示例 from pyspark.ml import Pipeline from pyspark.ml.feature import StringIndexer from pyspark.ml.feature impo

因此,最近我一直在使用Mlib Databricks群集,并看到我的群集版本(5.1)可以使用“根据文档”。这个集群正在运行Python 2

我觉得XGBoost4J只适用于Scala和Java所以我的问题是:如何将xgboost模块导入到这个环境中而不丢失分发功能?

下面是我的代码示例

from pyspark.ml import Pipeline
from pyspark.ml.feature import StringIndexer
from pyspark.ml.feature import VectorAssembler
import xgboost as xgb # Throws error because module is not installed and it should

# Transform class to classIndex to make xgboost happy
stringIndexer = StringIndexer(inputCol="species", outputCol="species_index").fit(newInput)
labelTransformed = stringIndexer.transform(newInput).drop("species")

# Compose feature columns as vectors
vectorCols = ["sepal_length", "sepal_width", "petal_length", "petal_width", "species_index"]
vectorAssembler = VectorAssembler(inputCols=vectorCols, outputCol="features")
xgbInput = vectorAssembler.transform(labelTransformed).select("features", "species_index")

您可以尝试使用spark sklearn分发python或scikit学习版的xgboost,但该分发版与xgboost4j分发版不同。我听说databricks上xgboost4j的pyspark api即将发布,请继续关注

您可以尝试使用spark sklearn分发python或scikit学习版的xgboost,但该分发版与xgboost4j分发版不同。我听说databricks上xgboost4j的pyspark api即将发布,请继续关注

顺便说一句,可以找到相关的拉取请求

顺便说一句,可以找到相关的拉取请求

如果您希望它被分发,请使用Scala/Java:我理解,但使用Python是不可能的?如果您希望它被分发,请使用Scala/Java:我理解,但是使用Python是不可能的?他们正在讨论如何以及将向pyspark添加什么。为了您的方便,您也可以跟踪PR:)他们正在讨论如何以及将向pyspark添加什么。为方便起见,您还可以跟踪PR:)