特征向量与火花中的字符串?

时间:2017-05-23 23:23:44

标签: python apache-spark pyspark apache-spark-ml

我是新来的,因为事业。 我的数据集包含大量具有分类变量的列。 我想利用特征向量存储这些分类,并使用VectorIndexer以一种方便的方式执行从分类到有序和向后的映射。

所以,我想要实现像这样简单的事情(pyspark表示法):

df = spark.createDataFrame(
    [
      (0, Vectors.dense([0.1, 0.2])),
      (1, Vectors.dense([0.1, 0.2])),
      (2, Vectors.dense([0.2, 1.2])),
      (3, Vectors.dense([0.1, 0.2])),
      (4, Vectors.dense([0.1, 2.2])),
      (5, Vectors.dense([0.1, 0.2]))],
    ["id", "features"]
)

但是对于字符串功能:

# shall not work. For demonstration purposes only  
df = spark.createDataFrame(
        [
           (0, Vectors.dense(['a', 'x'])), 
           (1, Vectors.dense(['b', 'x'])), 
           (2, Vectors.dense(['c', 'y'])), 
           (3, Vectors.dense(['a', 'z'])), 
           (4, Vectors.dense(['z', 'x'])), 
           (5, Vectors.dense(['c', 'z']))],
        ["id", "features"]
      )

我猜Vector类不应该使用字符串,但是我想在这里建议你最好的方法来使它工作。

0 个答案:

没有答案