使用Spark RDD来分析movies.csv文件,统计每种类型的电影有多少部,用scala编程语言
时间: 2024-03-23 19:39:43 浏览: 85
好的,以下是使用Spark RDD来分析movies.csv文件,统计每种类型的电影有多少部的Scala代码:
```scala
import org.apache.spark.{SparkConf, SparkContext}
val conf = new SparkConf().setAppName("movie analysis")
val sc = new SparkContext(conf)
val data = sc.textFile("movies.csv")
val header = data.first()
val genres = data.filter(line => line != header)
.flatMap(line => line.split(",")(2).split("\\|"))
.distinct()
.collect()
val movieCountByGenre = data.filter(line => line != header)
.flatMap(line => line.split(",")(2).split("\\|").map((_, 1)))
.reduceByKey(_ + _)
.collect()
println("Number of movies by genre:")
for (genre <- genres) {
val count = movieCountByGenre.find(_._1 == genre).map(_._2).getOrElse(0)
println(s"$genre: $count")
}
```
这段代码与Python代码的思路相同,只是使用了Scala语言的语法。
阅读全文