一、数据5,1 1 7,2 1 9,3 2 11,4 1 19,5 3 18,6 2二、程序
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.regression.{LabeledPoint, LinearRegressionWithSGD}
import org.apache.spark.{SparkConf, SparkContext}
object kimiYang { def main(args: Array[String]): Unit = {
val conf = new SparkConf().setMaster("local").setAppName("kimiYang");
val sc = new SparkContext(conf);
val data = sc.textFile("kimi.txt");
val parseData = data.map{ line =>
val parts = line.split(',') //根据逗号进行分区
LabeledPoint(parts(0).toDouble, Vectors.dense(parts(1).split(' ').map(_.toDouble)))
}.cache() //转化数据格式
val model = LinearRegressionWithSGD.train(parseData, 100, 0.1) //建立模型
val result = model.predict(Vectors.dense(2,1)) //通过模型预测模型
println("model weights:")
println(model.weights)
println("result:")
println(result) //打印预测结果
sc.stop }}
结果:
model weights:
[2.5403601877116198,1.55918730266957]
result:
6.6399076780928095
MLlib线性回归实战
最新推荐文章于 2024-01-18 02:12:07 发布