Data Bar

Description
Я - Саша Варламов, занимаюсь аналитикой и автоматизацией лет 15 уже (разраб, лид, PM, CTO, консалтинг).
2x Tableau Zen Master/Ambassador, 3 года NDA c Tableau. ex Playrix, ex inDrive.

Здесь пишу свои истории про анализ и визуализацию данных.
Advertising
We recommend to visit
HAYZON
HAYZON
6,442,108 @hayzonn

💼 How to create capital and increase it using cryptocurrency

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
Мои каналы: @mazzafam

Last updated 22 hours ago

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 3 months ago

Новые и перспективные Web3 игры с добычей токенов.

Чат: https://t.me/Crypto_Wolf_Chat

Правила чата смотрите в описании чата.

Все свои вопросы направляйте в чат или главному модератору чата: @Exudna_118

По теме сотрудничества: @Zombini

Last updated 2 months, 2 weeks ago

3 days, 21 hours ago
**Все каналы Telegram**

Все каналы Telegram

Telegram из простого мессенджера превратился в агрегатор новостей, блогов, корпоративных чатов, магазинов и различных приложений. Каналы в Телеграм развиваются стремительно, и вот уже мы начинаем свой день с новостей в телеграм каналах, а не ходим на новостные сайты, как это было буквально 5 лет назад. Кроме этого, Телеграм забрал на себя часть функции соцсетей. Давайте попробуем оценить насколько сейчас Телеграм большой, какие есть каналы, какие категории, какая аудитория каналов. Чаты пока не берём, про них отдельно напишу.

Собрал данные о 720 802 каналов в Телеграм от 0 подписчиков и выше. Это результат парсинга tgstat.com, около двух дней всё собиралось - пришлось работать с динамической подгрузкой и обходить защиты Cloudflare. Каналы разбиты на 48 категорий (тем) и 11 гео (это 10 ключевых стран и Global - остальные страны). Каналов без категорий здесь нет - их много, но они мелкие, и непонятно о чем. Из собранных каналов 50 000 приватных, остальные - публичные. Датасет по каналам выложил на kaggle, предварительно убрав группы каналов 18+, даркнет и все приватные каналы, чтобы не компроментировать инвайт ссылки. В публичном доступе подобного датасета не видел, поэтому вам может быть интересно покрутить данные. Получилось более 650 000 каналов в 43х категориях. Каждая категория - в своём файле csv.

Все каналы в Телеграм делятся на публичные и приватные. У публичных каналов есть '@' в названии, например, название этого канала @data_bar. У приватных каналов вместо названий - набор букв. Приватные каналы не выводятся в поиске. Люди скрывают каналы по ряду причин: анонимность, защита от ботов, платные каналы и пр.. Но, если вы сделали инвайт ссылку, по которой в приватный канал приходят пользователи, эта ссылка может оказаться в общем доступе, и канал перестанет быть приватным. Поэтому ссылки приватных каналов не выкладываю.

Теперь к простому анализу данных.

Каналы разбиваются по темам. Больше всего каналов в категории 'Blogs', меньше всего - 'Courses'. Самые крупные каналы - в категории 'Crypto'. Самый большой канал - Хомяк (@hamster_combat), там более 52х млн подписчиков, но отток существенный.
По гео больше всего каналов в RU сегменте. Открытием было то что в ключевых странах есть Иран и Эфиопия. В разных странах разные темы более популярны. Например, в Индии больше всего каналов категории 'Education', в России - 'Blogs', в Китае - 'Adult' (50% от всех каналов и сумасшедшее количество подписчиков просто), в Иране популярны 'Quotes' - это цитаты и изречения, в Узбекистане - 'Sales', в Казахстане - 'News'.

В заглавной картинке - Топ 1000 каналов по подписчикам. Площадь каждого круга пропорциональна числу подписчиков.

Визуализацию по публичным каналам сделал, но про неё отдельно напишу - пока в Hide.
Про метрики телеграм каналов - тоже отдельно.

1 week, 3 days ago
**Визуализация данных и евклидова геометрия**

Визуализация данных и евклидова геометрия

Человек плохо воспринимает информацию в виде цифр. Эволюционно люди и другие виды живых существ ориентированы на геометрические объекты. Всё что человек видит - это сложные геометрические формы, которые мозг способен описывать, то есть, понимать размеры, форму и т.д. Цифры и числа - некая система отсчета, придуманная человеком и помогающая ему описывать сложные системы.

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

Эта мысль сильно изменила сознание. Понимаешь что кроме шаблонов визуализаций у тебя в арсенале есть все геометрические формулы (школьной программы более чем достаточно), и с ними можно уходить на другие уровни визуализации данных. Можно использовать гармонические функции, преобразования координат, формулы проекций, различные функции. Всё это - другой мир, позволяющий делать почти всё что хочешь.

Главный труд Евклида '[Начала](https://ru.wikipedia.org/wiki/%D0%9D%D0%B0%D1%87%D0%B0%D0%BB%D0%B0_(%D0%95%D0%B2%D0%BA%D0%BB%D0%B8%D0%B4)' был написал около 300 г до нашей эры.
С этим трудом тесно связана элементарная или евклидова геометрия. Формулам, которые мы применяем в визуализации данных может быть несколько тысяч и сотен лет, но они до сих пор актуальны.

О построении нетривиальных визуализаций и геометрических преобразованиях буду рассказывать на мероприятии 'Cyprus Tableau User Group' в докладе 'Beyond the Basics: Unleashing the Full Power of Tableau Visualizations'.

В бизнесе важна скорость и однозначность считывания информации с дашбордов. Поэтому, в большинстве случаев, трех видов диаграмм достаточно для описания данных (линейный график, бар-чарт, диаграмма разброса). Их все понимают. За пределами бизнесовых дашбордов с визуализацией можно экспериментировать сколько угодно - здесь масса вариантов для творчества. Постепенно приходишь к тому что становится интересным экспериментировать с визуализацией и искать новые подходы. Здесь нет ограничений - можно делать всё что угодно, даже вещи, которые ранее считались невозможными. В конце концов, появляется потребность в экспериментах и самовыражении, невозможные задачи перестают существовать.

Мне повезло учиться данным и их визуализации в международном data комьюнити, когда не было курсов, и аналитика не была в почёте. Можно было экспериментировать вместе с энтузиастами из разных стран и разбирать визы с топами в этой области. Люди из разнызх стран и компаний в свободное время собирали датавизы, общались, а драйва и опыта в этом куда больше чем в работе с базовым Superstore.

Отметил шаги, которые проходишь в своём развитии:

  1. Реверс-инжиниринг. Разбираешь чьи-то работы и пытаешься понять как они сделаны.
  2. Создание собственных визуализаций. Берешь датасет и делаешь виз на стандартных диаграммах.
  3. Создание чего-то нового для себя. То что ты ещё не делал. Каждый раз узнаешь что-то новое и совершенствуешься.
  4. Создание чего-то нового для всего сообщества. То, что в профессиональных сообществах еще никто не делал.
  5. Шеринг опыта и знаний.

4й шаг очень сложный - кажется что всё уже сделано в визуализации. На самом деле - нет, ещё много всего не придумано. Но здесь важно понять что люди не пытаются делать новые вещи, поскольку считают невозможным или ненужным в рамках одного инструмента.

5й шаг - это статьи, посты, выступления. Люди начинают учиться на твоих работах, разбирать их в группах, переводить статьи, дополнять своими мыслями.

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

В визуализации данных правило Линуса 'Talk is cheap. Show me the code' также работает. Смотрите на то что люди делают. У профессионалов в визуализации данных всегда есть что посмотреть и чему научиться.

2 weeks, 3 days ago
**Вселенная Telegram и tech каналы**

Вселенная Telegram и tech каналы

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

Существуют агрегаторы данных телеграм типа tgstat. Похоже что наиболее простой способ - парсить данные агрегаторов. Варианты с ботами, виртуальными аккаунтами показались более затратными.

Итак, посмотрел несколько агрегаторов, взял на пробу три датасемпла. Самым адекватным показался семпл tgstat, поэтому, остановился на нем. В сервисе надо регистрироваться по телеграм аккаунту. Контент динамический, то есть, подгружается по клику. В парсинге всех данных не было смысла - важно было посмотреть что получится на семплах. Спарсил несколько категорий RU домена.

Сегодня расскажу про tech каналы с этой страницы. Это каналы категориии 'Технологии', Россия. Есть несколько каналов из этой категории, читаю их ежедневно, ну и этот канал тоже о технологиях.

Теперь о парсинге. У tgstat есть защита от ботов, регистрация по телеграм аккаунту, динамический контент (не все загружается сразу). Питоновская библиотека requests здесь не работает. Playwright не может регистрироваться с внутренних браузеров - ошибка. Поэтому, делаем максимально 'человеческий' скрипт. Скрипт повторяет действия человека. Запускается Хром в режиме отладки, скрипт логинится, нажимает кнопки для загрузки контента в этом браузере и скачивает данные. Все сохраняется в csv, поля:

Категории
1. id канала
2. Техническое название канала с @ в начале
3. Название канала
4. Ссылка на лого канала
5. Описание канала
Метрики:
6. Число подписчиков
7. Дата последней активности

Сохраняем только каналы с числом подписчиков 100 и больше, и из 15и тысяч остается 7635. С названиями каналов есть нюансы в парсинге, но обойти можно.

Итого, датасет готов, можно покрутить и поискать инсайты. Лого скачал скриптом. Первые 20 каналов сильно выделяются на фоне остальных огромным числом подписчиков. Поэтому хотелось показать сразу все каналы, построить 'вселенную' каналов. Визуализация - packed bubbles c лого и размерами кругов пропорциональными числу подписчиков.

Теперь к самой визуализации. Packed bubbles можно делать различными способами и в разных средах. В BI - большие ограничения, питон - долго считает (пробовал, но ждать долго). Поэтому, победил Процессинг, сделал на p5js, алгоритм collide. В коде js есть 7 параметров, их можно настраивать, получая разные вариации диаграммы. Долго игрался с этим, в итоге, в комментах приложил 3 визуализации в разрешении 8k:

  1. Каналы 100 и более подписчиков. 7635 штук.
  2. Каналы 1000 - 100000 подписчиков. 4535 штук.
  3. Каналы 10000 - 100000 подписчиков. 1009 штук.

Получились своего рода вселенные со звездами и планетами (самое то на fullscreen). На одной картинке можете видеть все каналы и представить масштабы контента в телеграм. Разрешение высокое, можно зумить и искать интересные каналы. Контент 3ей категории читаю больше всего, поэтому, сделал интерактивный виз в Tableau именно в этом диапазоне подписчиков. Координаты кругов взял из js.

Интерактив с фильтрами и хайлайтами в Tableau

Здесь можно найти канал, выбирать диапазон подписчиков и рейтинги на основе числа подписчиков. Можно читать описание и переходить в сам канал по клику.
Из того что читаю: LEFT JOIN, Reveal the Data, Инжиниринг данных, Время Валеры, Чартомойка и другие.
Интересно получилось.

Cмотрел еще категории 'блоги' и 'спорт' . Там кривые по рейтингам другие совершенно. Про это тоже расскажу. До визуализации всей телеграм вселенной осталось немного.

We recommend to visit
HAYZON
HAYZON
6,442,108 @hayzonn

💼 How to create capital and increase it using cryptocurrency

👤 𝐅𝐨𝐮𝐧𝐝𝐞𝐫: @Tg_Syprion
🗓 ᴀᴅᴠᴇʀᴛɪsɪɴɢ: @SEO_Fam
Мои каналы: @mazzafam

Last updated 22 hours ago

Канал для поиска исполнителей для разных задач и организации мини конкурсов

Last updated 3 months ago

Новые и перспективные Web3 игры с добычей токенов.

Чат: https://t.me/Crypto_Wolf_Chat

Правила чата смотрите в описании чата.

Все свои вопросы направляйте в чат или главному модератору чата: @Exudna_118

По теме сотрудничества: @Zombini

Last updated 2 months, 2 weeks ago