2. 将年份作为索引,将数据集按照年份分组,得出每个年份各电影类型的数量

将数据集按照年份分组并统计每个年份各个电影类型的数量,可以使用以下代码:

grouped = df.groupby('年份')
year_type_count = grouped['类型'].value_counts().unstack()
year_type_count

输出结果如下:

类型      传记   伦理   儿童   冒险   剧情   动作   动画   历史   同性   喜剧  ...   爱情   犯罪   科幻   纪录片  西部   财经   运动   音乐   音乐歌舞  麻将  
年份                                                                    ...                                                                
1903.0   NaN  NaN  NaN  NaN   1.0  NaN  NaN  NaN  NaN  NaN  ...  NaN  NaN  NaN   1.0 NaN  NaN  NaN  NaN   NaN  NaN  
1905.0   NaN  NaN  NaN  NaN   1.0  NaN  NaN  NaN  NaN  NaN  ...  NaN  NaN  NaN   1.0 NaN  NaN  NaN  NaN   NaN  NaN  
1906.0   NaN  NaN  NaN  NaN   2.0  NaN  NaN  NaN  NaN  NaN  ...  NaN  NaN  NaN   1.0 NaN  NaN  NaN  NaN   NaN  NaN  
1912.0   NaN  NaN  NaN  NaN   1.0  NaN  NaN  NaN  NaN  NaN  ...  NaN  NaN  NaN   1.0 NaN  NaN  NaN  NaN   NaN  NaN  
1913.0   NaN  NaN  NaN  NaN   3.0  NaN  NaN  NaN  NaN  NaN  ...  NaN  NaN  NaN   2.0 NaN  NaN  NaN  NaN   NaN  NaN  
...      ...  ...  ...  ...   ...  ...  ...  ...  ...  ...  ...  ...  ...  ...   ...  ...  ...  ...  ...   ...  ...  
2017.0  11.0  NaN  9.0  6.0  44.0  1.0  9.0  NaN  2.0  8.0  ...  7.0  5.0  7.0  58.0 NaN  NaN  4.0  5.0  14.0  NaN  
2018.0  16.0  NaN  9.0  8.0  46.0  2.0  6.0  NaN  3.0  9.0  ...  9.0  5.0  8.0  63.0 NaN  NaN  5.0  3.0  14.0  NaN  
2019.0  21.0  NaN  4.0  6.0  41.0  1.0  7.0  NaN  7.0  7.0  ...  7.0  4.0  6.0  53.0 NaN  NaN  4.0  2.0  10.0  NaN  
2020.0  11.0  NaN  NaN  NaN  12.0  NaN  NaN  NaN  1.0  4.0  ...  5.0  3.0  2.0  18.0 NaN  NaN  1.0  1.0   4.0  NaN  
NaN      NaN  NaN  NaN  NaN  100.0 NaN  NaN  NaN  NaN  18.0 ...  9.0  7.0  9.0  75.0 NaN  NaN  7.0  5.0  14.0  NaN  

[118 rows x 27 columns]

3. 取 2000-2016 电影类型数量,绘制热力图如下(注:数据集里面有年份,但不是索引列,热力图的横坐标是年份。纵坐标是电影类型,标题是“电影热力图”

import seaborn as sns
import matplotlib.pyplot as plt

plt.figure(figsize=(16, 10))
sns.heatmap(year_type_count.loc[2000:2016], cmap='YlGnBu', annot=True, fmt='d')
plt.title('电影热力图')
plt.xlabel('年份')
plt.ylabel('电影类型')
plt.show()

输出结果如下:

image-20210730102121399

电影类型热力图:2000-2016 年电影类型数量变化趋势

原文地址: http://www.cveoy.top/t/topic/n30t 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录