Читать книгу Data Science для новичков - Руслан Назаров - Страница 6
Глава 2. Статистическое исследование
Загрузка и описание данных
ОглавлениеТеперь мне надо определить, что я хочу узнать из данных. Специальных целей передо мной никто не ставил, поэтому определю их самостоятельно. Что интересного могут рассказать данные? Здесь же я сразу укажу, какими методами буду решать эти задачи. Надо помнить, что не всегда можно заранее знать, какой метод подойдет. Например, мне нужно сначала проверить распределение на нормальность, чтобы применить корреляцию. Поэтому в этот список можно вносить изменения по ходу анализа.
Как указывалось ранее, я могу разделить статистическое обследование на изучение набора данных и изучение отношений между наборами данных. С учетом этого и разделю задачи.
Изучение каждой группы данных отдельно:
* Характеристики центрального положения для количественных признаков. Метод describe;
* Характеристики категориальных данных. Тот же describe;
* Какой тип распределения у средних оценок для книг, для количества страниц в книгах? (здесь не рассматривается).
Изучение отношений между группами данных:
* Как распределены книги по десятилетиям? Использую график;
* Какие книги получили высокие оценки? Использую график;
* Как распределены книги по кварталам? Использую график;
* Какие книги чаще всего издавались в рамках набора данных? Использую график;
* Если у книги есть соавтор или переводчик, как это влияет на оценку? Использую дисперсионный анализ;
* От каких признаков зависит оценка книги? Использую корреляцию, дисперсионный анализ;
* Какие слова чаще всего используются в названии книги? Использую NLTK.
Начну с характеристик центрального положения.
Я буду для простоты писать «статистика» вместо «математическая статистика», «статистический анализ», хотя строго говоря это не одно и то же.
Уже в этой таблице можно видеть важнейшие концепции статистики. Выше я писал, что статистика должна описывать наборы данных и их взамиодействие. Здесь мы видим описание именно наборов данных, взаимодействие будет позже.
В таблице дается описание для четерых численных признаков: average_rating, num_pages, ratings_count, text_reviews_count. Остальные признаки являются категориальными и в эту таблицу не попали, но ниже я также рассмотрю и эти признаки. Пока продолжу изучать таблицу. Для каждого признака, например для text_reviews_count, приведен ряд характеристик (метрик): count, mean и т. д. Об этих характеристиках можно говорить как о характеристиках центрального положения. Откуда пошло такое выражение? Это показано на рисунке ниже
Среднее значение 24,8 есть характеристика центрального положения, так как фактические данные (8,12…52) расположены вокруг этого среднего. Отсюда же видно, например, что можно посчитать расстояние от центра до каждого значения, что приводит к дисперсии и стандартному отклонению.
В чем смысл таких характеристик? У меня есть набор данных. Я хочу его как-то охарактеризовать. Зачем? Во-первых, чтобы лучше понять объект, который описывается этими данными. Например, про среднюю оценку я теперь знаю, что она у книг составляет 3.9. Во-вторых, чтобы уметь предсказывать будущие события. Например, я хочу знать, а какую оценку поставят новой книге. При прочих равных можно считать, что эта оценка будет близка к среднему значению. Но так как точно сказать этого нельзя, то меня интересует, в каком диапазоне может быть эта оценка, здесь помогает std. Минимум и максимум определяют, в каких границах расположены оценки. Благодаря этому я достоверно знаю, что оценка не может быть меньше 1 и не может быть больше 5. А к чему же все эти проценты: 25%, 50%, 75%? Эти проценты показывают следующее: 25% оценок ниже чем 3.77, 50% оценок ниже чем 3.96 и т. д. Это условно можно представить как вероятность: вероятность того, что оценка книги будет 3.77 составляет 25%.
Так я изучаю характеристики каждого набора данных. Замечаю, что в num_pages, ratings_count, text_reviews_count есть странности. Так, например, среднее в num_pages составляет 344, но максимальное значение 6576. Говоря иначе, в среднем в одной книге 344 страницы, но есть книга, у которой 6576 страниц. Это может свидетельствовать о выбросах в данных. Непосредственно о выбросах я расскажу позже, но уже сейчас надо это учитывать. Если я предполагаю, что в моем наборе данных есть выбросы, то я могу использовать робастные, то есть устойчивые к выбросам методы оценки среднего. Я могу найти такую оценку с помощью библиотеки papanda.
Вижу, что в данных 10149 уникальных названий книг из 10838.
Чаще всего встречается The Iliad, 8 раз. Однако надо учитывать, что есть еще несколько книг, которые в изданы 8 раз. Например, Анна Каренина. Поэтому The Iliad можно считать случайным.
26 различных языков, самый частый eng, 8669.
Декад всего 13, самая частая – это 2000, на которую приходится 7332.
Кварталов 4, самый частый 3, на него приходится 2851 книга.
Категорий «с соавтором, переводчиком» и без две: либо переводчик или соавтор есть, либо их нет. Чаще всего их нет, таких случаев 6492.
Аналогично, либо книга является частью многотомного издания и тогда в колонке multivolume стоит 1, либо не является частью такого издания и тогда получается 0. Вижу, что в наборе, как правило, не многотомные издания (их 8147).
Опять-таки, а зачем мне эти знания? Во-первых, чтобы лучше понимать природу того объекта, который исследуется. В каком году книге чаще выходили? А в каком квартале? С каким названием? Все это может помочь понять не только, что выпускают издательства, но и вкусы читателей. Во-вторых, категориальные признаки позволяют разбить объекты на группы, скажем можно разбить книги по языку, и уже внутри каждой группы посмотреть оценки, количество страниц. Эта возможность ставит дополнительные задачи. Например, категории не должны быть слишком маленькими, так как невозможно будет доверять результатам. Например, если у меня по какому-то языку только две книги, то определить среднюю я смогу, но эта средняя может быть слишком далека от истинного значения. Надо помнить, что в статистике всегда руководствуются законом больших чисел.
Ниже я приведу несколько способов агрегирования (группировки) данных.