千家信息网

spark mllib 预测之LinearRegression的示例分析

发表于:2024-10-28 作者:千家信息网编辑
千家信息网最后更新 2024年10月28日,这篇文章主要介绍spark mllib 预测之LinearRegression的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!商品价格与消费者输入之间的关系商品需求(y
千家信息网最后更新 2024年10月28日spark mllib 预测之LinearRegression的示例分析

这篇文章主要介绍spark mllib 预测之LinearRegression的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

商品价格与消费者输入之间的关系

商品需求(y, 吨),价格(x1, 元),消费者收入(x2, 元)

yx1x2
511
812
721
1323
1834

建立需求函数: y = ax1+bx2

运行代码如下

package spark.regressionAnalysis/**  * 线性回归, 建立商品价格与消费者输入之间的关系,  * 预测价格  */import org.apache.log4j.{Level, Logger}import org.apache.spark.mllib.linalg.Vectorsimport org.apache.spark.mllib.regression.{LabeledPoint, LinearRegressionWithSGD}import org.apache.spark.{SparkConf, SparkContext}object LinearRegression {  val conf = new SparkConf()     //创建环境变量    .setMaster("local")        //设置本地化处理    .setAppName("LinearRegression")//设定名称  val sc = new SparkContext(conf)  //创建环境变量实例  def main(args: Array[String]) {    val data = sc.textFile("./src/main/spark/regressionAnalysis/lr.txt")//获取数据集路径    val parsedData = data.map { line =>     //开始对数据集处理        val parts = line.split('|') //根据逗号进行分区        LabeledPoint(parts(0).toDouble, Vectors.dense(parts(1).split(',').map(_.toDouble)))      }.cache() //转化数据格式    //LabeledPoint, numIterations, stepSizeval model = LinearRegressionWithSGD.train(parsedData, 2, 0.1) //建立模型    val result = model.predict(Vectors.dense(1, 3))//通过模型预测模型    println(model.weights)    println(model.weights.size)    println(result) //打印预测结果  }}

lr.txt

5|1,18|1,27|2,113|2,318|3,4

结果如图

以上是"spark mllib 预测之LinearRegression的示例分析"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!

0