我需要对电影的数据集进行数据分析的代码
时间: 2024-05-15 13:15:27 浏览: 79
这是一个基本的电影数据集分析代码示例,你可以根据你的数据集进行调整和修改:
```
# 导入必要的库
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
# 读取数据
movies = pd.read_csv('movies.csv')
ratings = pd.read_csv('ratings.csv')
# 合并数据集
data = pd.merge(movies, ratings, on='movieId')
# 查看数据
print(data.head())
# 统计电影数量
print('Number of movies:', len(data['movieId'].unique()))
# 统计用户数量
print('Number of users:', len(data['userId'].unique()))
# 统计每个电影的平均评分
movie_ratings = data.groupby('title')['rating'].mean().sort_values(ascending=False)
print('Top 10 highest rated movies:')
print(movie_ratings.head(10))
# 统计每个电影的评分人数
movie_ratings_count = data.groupby('title')['rating'].count().sort_values(ascending=False)
print('Top 10 most rated movies:')
print(movie_ratings_count.head(10))
# 统计每个年份的电影数量
movies_by_year = data.groupby(data['title'].apply(lambda x: x[-5:-1]))['title'].count()
print('Movies by year:')
print(movies_by_year)
# 统计每个电影的流派数量
genres = ['Action', 'Adventure', 'Animation', 'Children', 'Comedy', 'Crime', 'Documentary', 'Drama', 'Fantasy', 'Film-Noir', 'Horror', 'Musical', 'Mystery', 'Romance', 'Sci-Fi', 'Thriller', 'War', 'Western']
for genre in genres:
data[genre] = np.where(data['genres'].str.contains(genre), 1, 0)
genre_count = data[genres].sum().sort_values(ascending=False)
print('Genre count:')
print(genre_count)
# 绘制每个电影的平均评分和评分人数的散点图
movie_stats = data.groupby('title')['rating'].agg(['mean', 'count'])
plt.scatter(movie_stats['mean'], movie_stats['count'])
plt.xlabel('Mean rating')
plt.ylabel('Number of ratings')
plt.show()
```
这个代码示例包含了一些基本的数据分析方法,例如统计电影数量、用户数量、每个电影的平均评分和评分人数、每个年份的电影数量、每个电影的流派数量,以及绘制每个电影的平均评分和评分人数的散点图。你可以根据你的数据集进行调整和修改,以适应你的分析需求。
阅读全文