gpt4 book ai didi

machine-learning - 如何将 ML VectorUDT 功能从 .mllib 转换为 .ml 类型

转载 作者:行者123 更新时间:2023-11-30 08:24:42 24 4
gpt4 key购买 nike

在 2.0.0 版中使用 pySpark ML API 作为线性回归简单示例时,我在新的 ML 库中遇到错误。

代码是:

from pyspark.sql import SQLContext
sqlContext =SQLContext(sc)
from pyspark.mllib.linalg import Vectors

data=sc.parallelize(([1,2],[2,4],[3,6],[4,8]))
def f2Lp(inStr):
return (float(inStr[0]), Vectors.dense(inStr[1]))
Lp = data.map(f2Lp)
testDF=sqlContext.createDataFrame(Lp,["label","features"])
(trainingData, testData) = testDF.randomSplit([0.8,0.2])
from pyspark.ml.regression import LinearRegression
lr=LinearRegression()
model=lr.fit(trainingData)

和错误:

IllegalArgumentException: u'requirement failed: Column features must be of type org.apache.spark.ml.linalg.VectorUDT@3bfc3ba7 but was actually org.apache.spark.mllib.linalg.VectorUDT@f71b0bce.'

如何将矢量特征从 .mllib 转换为 .ml 类型?

最佳答案

从Spark2.0开始使用

from pyspark.ml.linalg import Vectors, VectorUDT

而不是

from pyspark.mllib.linalg import Vectors, VectorUDT

关于machine-learning - 如何将 ML VectorUDT 功能从 .mllib 转换为 .ml 类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38901123/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com