Original size 595x845

Анализ данных самых популярных книг

PROTECT STATUS: not protected
4

Описание проекта

Я «книжный червь» и долго выбирать тему мне не пришлось. Я прочитала множество книг, но никогда не интересовалась их историей, когда были напечатаны первые книги, какие жанры наиболее актуальны, и я решила поставить свой проект именно этой теме. На сайте Kaggle я нашла подходящий датасет, который содержит нужную мне информацию.

Выбор цветовой палитры пал на одну из моих любимых книг «Общество Мертвых Поэтов» Нэнси Горовиц-Клейнбау.

big
Original size 1200x916
big
Original size 1173x241

В ходе работы я использовала следующие графики: Круговая диаграмма Столбчатая диаграмма Линейчатая диаграмма

Обработка данных

В начале работы необходимо импортировать нужные библиотеки. Для визуализации данных используется matplotlib.pyplot, а для работы с табличной информацией — pandas.

Затем данные о книгах из файла imbd.csv загружаются на локальный компьютер с помощью функции files.upload (), доступной в среде Google Colab. После загрузки файл считывается в таблицу (DataFrame) с помощью функции pd.read_csv (). Это позволяет удобно анализировать данные.

Наконец, выводится информация из таблицы, чтобы убедиться в корректности загрузки данных.

Код:

from google.colab import files uploaded = files.upload ()

import matplotlib.pyplot as plt import pandas as pd df = pd.read_csv («best-selling-books.csv») df

График 1

В первом графике я рассматриваю динамику выпуска книг. Организация данных в порядке возрастания позволяет легко отследить, как часто книги публиковались в разные временные промежутки.

Для удобства под каждым столбцом указан год, а слева можно наблюдать шкалу с числами, которая указывает на количество книг. Если посмотреть на график, то можно увидеть, что печать книг началась ещё в XIV веке, но по-настоящему популярной и актуальной она стала в XX и XXI веках, но большой скачек приходит на середину XX века.

Original size 846x554

Код:

import pandas as pd import matplotlib.pyplot as plt

df = pd.read_csv ('best-selling-books.csv')

colors = ['#3F0F11', '#2A1B15', '#834B45', '#A8482F', '#877C78']

plt.figure (figsize=(10, 6)) df['First published'].plot (kind='hist', bins=20, color=colors[0], edgecolor='black')

plt.title ('Год Первого Издания', fontsize=16, color=colors[1]) plt.xlabel ('Год Издания', fontsize=14, color=colors[2]) plt.ylabel ('Количество Книг', fontsize=14, color=colors[2])

plt.gca ().spines[['top', 'right']].set_visible (False)

plt.show ()

График 2

Следующий график показывает самые популярные языки, на которых пишутся книги. Круговая диаграмма в данном случае является наглядным инструментом, поскольку она позволяет увидеть различия в процентном соотношении.

В графике мы видим такие языки, как английский, русский, японский, немецкий и французский. Из диаграммы можно сделать вывод, что английский язык занимает лидирующую позицию в мире печати. Это связано с тем, что английский является наиболее распространённым и международным языком. На втором месте находится русский язык, а на третьем — сразу три языка: французский, немецкий и японский.

Original size 640x660

Код:

import pandas as pd import matplotlib.pyplot as plt

df = pd.read_csv ('best-selling-books.csv')

top_languages = df['Original language'].value_counts ().head (5)

colors = ['#877C78', '#2A1B15', '#834B45', '#A8482F', '#3F0F11']

plt.figure (figsize=(8, 8)) plt.pie (top_languages, labels=top_languages.index, colors=colors, autopct='%1.1f%%', startangle=140)

plt.title ('5 Самых Популярных Языков Книг', fontsize=16)

plt.axis ('equal') plt.show ()

График 3

В этом графике отражена статистика по жанрам литературы, которые пользуются наибольшим спросом в мире. Такой вид диаграммы был выбран для того, чтобы наглядно продемонстрировать различия между ними.

Рассматривая график, можно сделать вывод, что самым востребованным направлением стало фэнтези, что меня лично поразило. Следом за ним с небольшим отрывом идут новеллы и книги по саморазвитию. Также в одном ряду оказались исторические книги и произведения для детей.

Original size 1008x554

Код:

import pandas as pd import matplotlib.pyplot as plt

df = pd.read_csv ('best-selling-books.csv')

top_genres = df['Genre'].value_counts ().head (7)

colors = ['#877C78', '#2A1B15', '#834B45', '#A8482F', '#3F0F11', '#E0C7B0', '#D5A47D']

plt.figure (figsize=(10, 6)) top_genres.plot (kind='barh', color=colors[: len (top_genres)])

plt.title ('7 Самых Популярных Жанров Книг', fontsize=16, color=colors[1]) plt.xlabel ('Количество Книг', fontsize=14, color=colors[2]) plt.ylabel ('Жанр', fontsize=14, color=colors[2])

plt.gca ().invert_yaxis () plt.show ()

График 4

Кроме того, я решила изучить статистику продаж книг. В таблице по вертикали представлено количество книг, а по горизонтали — общая сумма в миллионах.

Original size 846x556

Код:

import pandas as pd import matplotlib.pyplot as plt

df = pd.read_csv ('best-selling-books.csv')

df = df[df['Approximate sales in millions'].notna ()]

colors = ['#877C78', '#2A1B15', '#834B45', '#A8482F', '#3F0F11']

plt.figure (figsize=(10, 6)) plt.hist (df['Approximate sales in millions'], bins=20, color=colors[0], edgecolor='black', alpha=0.7)

plt.title ('Гистограмма Приблизительных Продаж Книг В Миллионах', fontsize=16) plt.xlabel ('Приблизительные Продажи (в миллионах)', fontsize=14) plt.ylabel ('Количество Книг', fontsize=14)

plt.grid (axis='y', alpha=0.75) plt.show ()

График 5

Совсем недавно, буквально 2-3 года назад я посмотрела серию фильмов по Гарри Поттеру и прочитала эту же серию книг.

На графике мы можем наблюдать, что в 1997 году книги занимали лидирующие позиции по уровню продаж. Это связано с тем, что в тот год была опубликована первая книга. После этого наблюдается значительное снижение продаж, и они уменьшаются почти в два раза.

Original size 855x553

Код:

import pandas as pd import matplotlib.pyplot as plt import numpy as np

df = pd.read_csv ('best-selling-books.csv')

hp_books = df[df['Book'].str.contains ('Harry Potter', case=False)]

hp_books_sorted = hp_books.sort_values (by='First published', ascending=True)

years = hp_books_sorted['First published'].values sales = hp_books_sorted['Approximate sales in millions'].values

colors = ['#877C78', '#2A1B15', '#834B45', '#A8482F', '#3F0F11']

plt.figure (figsize=(10, 6)) plt.plot (years, sales, marker='o', color=colors[0], linewidth=2, markersize=8)

plt.title ('Продажи книг Гарри Поттера по годам', fontsize=16) plt.xlabel ('Год', fontsize=12) plt.ylabel ('Приблизительные Продажи (в миллионах)', fontsize=12)

plt.xticks (years, fontsize=10) plt.yticks (fontsize=10)

for i, txt in enumerate (sales): plt.annotate (txt, (years[i], sales[i]), textcoords="offset points», xytext=(0,10), ha='center')

plt.grid () plt.show ()

Вывод

На основе проведенного анализа самых популярных книг можно сделать несколько ключевых выводов.

Прежде всего, интерес к литературе и её востребованность начинают проявляться только в XX веке, что свидетельствует о повышении уровня образованности среди населения. Также мы проанализировали, на каких языках чаще всего создаются литературные произведения, и нет ничего удивительного в том, что это английский язык, который лидирует по популярности во всём мире. Кроме того, мы обсудили вопрос продаж книг и хочется подчеркнуть, что книги по-прежнему пользуются спросом, несмотря на стремительное развитие технологий.

Анализ данных самых популярных книг
4
We use cookies to improve the operation of the website and to enhance its usability. More detailed information on the use of cookies can be fo...
Show more