Pull to refresh

Habra Analytics Tools: сравниваем хабы

Reading time 3 min
Views 4.6K
Если вы не читаете хабр по выходным, то скорее всего пропустили запуск мини-проекта Habra Analytics Tools. Цель проста — предоставить авторам Хабрахабра инструментарий для анализа статей и хабов. Первые инструменты посвящены анализу и сравнению хабов, и прежде всего они полезны для оценки аудитории статей. Например, график справа показывает, какие хабы также читают подписчики «Google» (высота столбика — процент подписчиков, который так же читает хабы по оси Х), а слева визуальную диспозицию относительно двух других хабов («Искусственный интеллект» и «Linux»).


Построение диаграмм Венна мы обсудили ранее вот в этой статье, исходники доступны на github (или готовые исполняемые файлы под Windows, Linux и Mac OS) — вам так же нужно будет скачать и распаковать data.7z (также необходим для данной статьи).

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

Исходные данные тула под названием hubs доступны на github, там же доступны исполняемые файлы для Windows и Linux.

Зачем это нужно?


Самое очевидное применение инструмента hubs — это анализ предпочтений целевой аудитории. Представим, что мы пишем для корпоративного блога и хотим узнать, что же еще читают наши подписчики. Какие темы их интересуют? Рассмотрим в качестве примера корпоративный блог Яндекса:

Для сравнения приведем хаб Яндекса (не корпоративный блог):

Из двух графиков мы видим, что предпочтения существенно отличаются (хотя их и объединяют некоторая любовь к Гуглу).

Столь существенная разница возникает прежде всего из-за существенной разницы в аудитории блога и хаба:


Таким образом диаграмма Венна говорит нам о том, что аудитория существенно отличается, а две гистограммы сверху показывают как именно отличаются вкусы читателей. А значит решение о том, в какой хаб писать — в корпоративный блог и/или в обычный хаб, можно принять во внимание тему статьи и её соответствие предпочтениям пользователей из гистограмм выше.

Похожие хабы

Если диаграмма Венна подсказывает взаимное расположении аудиторий двух хабов и отвечает на вопрос: «Как вырастет аудитория хаба X, если мы добавим Y», то гистограмма хабов отвечает на вопрос какие хабы Z1,Z2,… Zn похожи на хаб X?

Здесь мы предоставляем две метрики для сравнения хабов:
  • Если z% читателей хаба Х читают Y, то X ~ Y = z, пример, если 10% читателей хаба Космонавтика подписаны на хаб C++, то 10 — степень схожести хабов Космонавтика на C++ (данное отношение не симметрично)
  • Коэффициент_Жаккара:


Первая метрика подходит лучше всего для естественной интерпретации предпочтений читателей хаба, а вторая может быть полезна для автоматической кластеризации хабов в каталог. Приведем пример с оценкой предпочтений читателей хаба:

На данной гистограмме мы видим, что у корпоративного хаба есть несколько основных групп читателей, условно назовем их «разработка» — алгоритмы, программирование etc, «безопасность», «Open source», «рефакторинг» и «операционные системы». Данный фактор может быть учтен при написании статей, например, подчеркнув определенные аспекты интересные одной из групп читателей.

Код, документация и примеры


Для установки необходимо скачать либо:

Также необходимо скачать архив data.7z (~15МБ, unzipped ~ 200МБ) и распаковать его в той же директории, что и скрипт. Далее в зависимости от скаченной версии необходимо вызывать python hubs.py, либо ./hubs.efl, либо hubs.exe. Будем придерживаться первой версии.

Основные команды

Скрипт является консольным, поэтому его важнейшей командой является help, доступный через флаги -h, --help:
python hubs.py -h
пример вывода на экран:


Основная команда для вывода гистограммы «что еще читают подписчики хаба»:
python hubs.py --alsoread space
пример вывода:


Для каждого хаба в программе используется соответствующее имя из ссылки на этот хаб habrahabr.ru/hubspace — для хаба Космонавтика, space — это имя в программе. Вывод доступных имен хабов и их полные названия, все операции производятся по коротким латинским именам из списка (они же используются в url на хабре)
python hubs.py --hublist
В идеале используется вместе с командой grep:


Как уже было отмечено ранее, yandex — это корпоративный блог и хаб, чтобы устранить неоднозначность используется ключ:
--company. Поэтому, чтобы создать диаграмму для корпоративного блога Яндекса необходимо вызвать:
python hubs.py --alsoread yandex --company.

Для создания гистограммы на основе коэффициента Жаккара используется ключ --similar:
python hubs.py --similar space

Для вывода максимальных (минимальных) значений до N хабов по включению или коэффициенту Жаккара без самой гистограммы, необходимо вызвать ключ --max (--min):


Идеи для следующих tools


Монитор статей: после написания статьи нужно будет вызвать тул monitor $article_id и она будет записывать и рисовать изменение просмотров (плюсов, etc) во времени, а так же shares and likes в социальных сетях и возможно комментарии читателей.

Веб интерфейс: все тоже самое, но доступное через веб.

Идеи, комментарии, помощь зала и предложения особенно приветствуются.
Tags:
Hubs:
+15
Comments 15
Comments Comments 15

Articles