2025/2/9

Spark支持多种语言,其中Scala是其原生语言之一。通过Scala,可以更高效地编写Spark程序。本篇博客将展示如何使用Scala和Spark进行数据分析。
RDD操作:创建和处理RDD。
DataFrame和Dataset:高级API的使用。
机器学习:使用Spark MLlib进行简单分类。
示例代码:

 

import org.apache.spark.sql.SparkSession
import org.apache.spark.ml.classification.LogisticRegression
import org.apache.spark.ml.feature.VectorAssembler
import org.apache.spark.ml.linalg.Vectors

object SparkMLExample {
def main(args: Array[String]): Unit = {
val spark = SparkSession.builder
.appName("SparkMLExample")
.master("local[*]")
.getOrCreate()

import spark.implicits._

// 创建DataFrame
val data = Seq(
(1.0, Vectors.dense(0.0, 1.1, 0.1)),
(0.0, Vectors.dense(2.0, 1.0, -1.0)),
(1.0, Vectors.dense(3.0, -1.0, 1.0)),
(0.0, Vectors.dense(4.0, 1.0, 0.0))
).toDF("label", "features")

// 构建逻辑回归模型
val lr = new LogisticRegression()
.setMaxIter(10)
.setRegParam(0.01)

// 训练模型
val model = lr.fit(data)

// 预测
val predictions = model.transform(data)
predictions.show()

// 停止SparkSession
spark.stop()
}
}

 

运行步骤:
将上述代码保存为SparkMLExample.scala。
使用SBT打包项目:

sbt package
运行程序:

spark-submit --class SparkMLExample target/scala-2.13/sparkmlexample_2.13-0.1.jar
观察输出结果。

Scala与Spark的结合使得数据分析和机器学习更加高效。Spark MLlib提供了丰富的机器学习算法,使得模型训练和预测变得简单。

posted @ 2025-02-09 17:10  伐木工熊大  阅读(22)  评论(0)    收藏  举报