
Вводная часть
Выбранные данные: Для анализа использовался открытый набор данных MovieLens ml-latest-small — это база фильмов и оценок пользователей, предоставленная исследовательским проектом GroupLens (University of Minnesota). Источник: https://grouplens.org/datasets/movielens
Почему эти данные интересны: - Это реальные оценки фильмов от тысяч пользователей. - На основе этих данных строятся рекомендательные системы, аналогичные тем, что используют Netflix и IMDb. - Анализ помогает понять, какие жанры и годы наиболее популярны, и как менялись предпочтения зрителей.
Типы графиков, которые использовались: Гистограммы — для анализа распределения рейтингов. Линейные графики — для динамики рейтингов по годам. Столбчатые диаграммы — для визуализации популярных жанров и топ-фильмов. Тепловая карта (heatmap) — для анализа корреляций между показателями.
Этапы работы
1. Загрузка данных: Данные были загружены напрямую из официального источника с помощью Python:
url = «https://files.grouplens.org/datasets/movielens/ml-latest-small.zip" ! wget -q -O ml-latest-small.zip {url} ! unzip -q ml-latest-small.zip movies = pd.read_csv («ml-latest-small/movies.csv») ratings = pd.read_csv («ml-latest-small/ratings.csv»)
2. Предобработка данных: Очистка пропусков и объединение таблиц. Извлечение года из названия фильма. Подсчёт среднего рейтинга и количества оценок.
movies['year'] = movies['title'].str.extract (r'((\d{4}))').astype (float) movie_stats = ratings.groupby ('movieId').agg (avg_rating=('rating', 'mean'), n_ratings=('rating', 'count')).reset_index () movie_stats = movie_stats.merge (movies, on='movieId', how='left')
3. Визуализация: Использовались библиотеки matplotlib и seaborn:
sns.set_theme (style="whitegrid», palette="muted») plt.figure (figsize=(10,6))
4. Стилизация:
Выбран минималистичный стиль Seaborn (whitegrid, muted) для консистентного вида. Цветовая палитра pastel/muted — ассоциируется с «кинематографическим» стилем. Вдохновением послужили инфографики Netflix Data Science Blog и Kaggle Notebooks.
*Для написания кода пользовалась помощью ChatGPT
Итоговые графики