spark读取rantings,movies文件,(4) 统计最受欢迎的电影(即评分人数最多的电影)
时间: 2024-02-12 08:07:56 浏览: 98
可以通过以下步骤来实现:
1. 读取ratings和movies文件,将它们分别存储为ratings_df和movies_df的DataFrame。
```python
ratings_df = spark.read.csv("path/to/ratings.csv", header=True, inferSchema=True)
movies_df = spark.read.csv("path/to/movies.csv", header=True, inferSchema=True)
```
2. 计算每个电影的评分人数,使用groupBy和count函数,将结果存储在movie_ratings_count_df的DataFrame中。
```python
from pyspark.sql.functions import count
movie_ratings_count_df = ratings_df.groupBy("movieId").agg(count("userId").alias("num_ratings"))
```
3. 将movie_ratings_count_df与movies_df连接起来,以获取电影的名称和评分人数,将结果存储在popular_movies_df的DataFrame中。
```python
popular_movies_df = movie_ratings_count_df.join(movies_df, "movieId").orderBy("num_ratings", ascending=False)
```
4. 显示最受欢迎的电影,即评分人数最多的电影。
```python
popular_movies_df.show(1)
```
这将显示评分人数最多的电影及其评分人数和名称。
阅读全文