处理spark mllib分类器

时间:2015-10-07 17:49:00

标签: apache-spark classification random-forest apache-spark-mllib

我有一组分类列(字符串),我将解析并转换为要传递给mllib分类器(随机林)的要素向量。

在我的输入数据中,某些列具有空值。比方说,在其中一列中,我有p值+空值: 我应该如何构建我的特征向量,以及分类器的categoricalFeaturesInfo映射?

  • 选项1:我在categoricalFeaturesInfo中告诉p值,并在输入的Vectors中使用Double.NaN?
    • 附带问题:分类器如何处理NaN?
  • 选项2:我认为nulls是一个值,所以我在categoricalFeaturesInfo中告诉(p + 1)值,并将空值映射到某个double?

感谢您的帮助。

(PS:我知道新的数据帧+管道+ vectorindexer API,但由于它不能满足我的需要,所以我需要自己做)

1 个答案:

答案 0 :(得分:1)

看起来选项2就是那个。如果您的null实际上是分类要素的另一个级别,则只需将其映射到某个值。  请注意,在您正确使用它们之前,应将分类要素级别映射到0,1,2 ....等,请参见此处:

response in stackoverflow

因此,空值将映射到其中一个数字。