1在genres类型中用‘’符合隔开2将年份作为索引将数据集按照年份分组得出每个年份各电影类型的数量3取2000-2016电影类型数量绘制热力图如下接下来:绘制电影类型饼状图给出代码
import pandas as pd import matplotlib.pyplot as plt import seaborn as sns
读取数据
data = pd.read_csv('movies.csv')
将genres类型中用‘|’符合隔开
data['genres'] = data['genres'].str.split('|')
将年份作为索引,将数据集按照年份分组,得出每个年份各电影类型的数量
data = data.explode('genres') data['count'] = 1 data = pd.pivot_table(data, values='count', index='year', columns='genres', aggfunc='sum', fill_value=0)
取2000-2016电影类型数量
data = data.loc[2000:2016]
绘制热力图
plt.figure(figsize=(12, 6)) sns.heatmap(data, cmap='YlGnBu', annot=True, fmt='d', linewidths=.5) plt.title('Movie Genres Heatmap (2000-2016)', fontsize=14) plt.xlabel('Genres', fontsize=12) plt.ylabel('Year', fontsize=12) plt.show()
绘制电影类型饼状图
genres_count = data.sum() plt.figure(figsize=(8,8)) plt.pie(genres_count, labels=genres_count.index, autopct='%1.1f%%') plt.title('Movie Genres Distribution (2000-2016)', fontsize=14) plt.show(
原文地址: https://www.cveoy.top/t/topic/fbln 著作权归作者所有。请勿转载和采集!