我已创建并正在调试PySpark ML RandomForestClassificationModel,当然这是通过调用pyspark.ml.classification.RandomForestClassifier.fit()
创建的。我想解释RandomForestClassificationModel.featureImportances属性返回的特征向量。他们是SparseVector。
正如您在下面的笔记本中看到的那样,我必须在几个阶段转换我的功能,以使它们进入最终的Features_vec
,从而为算法提供支持。我想要的是功能类型和列键入的功能列表。如何使用功能的SparseVector来获取功能重要性列表以及功能名称或其他可解释的格式?
代码位于Jupyter Notebook here中。跳到最后。
这不应该是PySpark特有的,所以如果您知道Scala解决方案,请加入。