电影类型热力图:基于年份的电影类型数量分析
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
# 读取数据集
df = pd.read_csv('movie.csv')
# 将genres列中的类型用 '|' 符号隔开
df['genres'] = df['genres'].str.split('|')
# 将每个电影的类型展开为多行
df = df.explode('genres')
# 将年份作为索引
df.set_index('year', inplace=True)
# 按年份和电影类型分组,计算数量
grouped = df.groupby([df.index, 'genres']).size()
# 将分组结果转化为DataFrame
df_grouped = grouped.unstack()
# 取2000-2016年的数据
df_grouped = df_grouped.loc[2000:2016]
# 绘制热力图
plt.figure(figsize=(12, 6))
sns.heatmap(df_grouped, cmap='YlGnBu')
plt.title('电影热力图')
plt.show()
本代码首先读取电影数据集,并将 'genres' 列中的电影类型用 '|' 符号隔开,以便后续进行分组统计。接着,代码将每个电影的类型展开为多行,并将年份作为索引。
代码使用 groupby() 函数将数据集按照年份和电影类型进行分组,并计算每个分组中电影的数量。最后,代码使用 unstack() 函数将分组结果转化为 DataFrame,并绘制热力图。热力图展示了 2000 年到 2016 年之间不同电影类型数量的变化趋势,颜色越深表示数量越多。
本代码示例展示了如何使用 Python 和 Pandas 库对电影数据集进行分析,并使用 Seaborn 库绘制热力图,帮助我们更直观地了解不同年份电影类型数量的变化趋势。
原文地址: http://www.cveoy.top/t/topic/n30A 著作权归作者所有。请勿转载和采集!