ru
Feedback
LEFT JOIN

LEFT JOIN

Открыть в Telegram

Понятно про анализ данных, технологии, нейросети и, конечно, SQL. Услуги — leftjoin.ru Курсы по аналитике — https://stepik.org/users/431992492 Автор — @valiotti Реклама — @valiotti Перечень РКН: https://tapthe.link/PpkTHavwS

Больше

📈 Аналитический обзор Telegram-канала LEFT JOIN

Канал LEFT JOIN (@leftjoin) языкового сегмента Русский является активным участником. Сейчас сообщество объединяет 42 992 подписчиков, занимая 3 111 место в категории Технологии и приложения и 14 788 место в регионе Россия.

📊 Показатели аудитории и динамика

С момента создания невідомо проект демонстрирует стремительный рост, собрав аудиторию из 42 992 подписчиков.

Согласно последним данным от 02 июля, 2026, канал показывает стабильную активность. За последние 30 дней изменение числа участников составило -698, а за последние 24 часа — -17, при этом общий охват остаётся высоким.

  • Статус верификации: Не верифицирован
  • Уровень вовлечённости (ER): Средний показатель вовлечённости аудитории составляет 17.50%. В первые 24 часа после публикации контент обычно набирает 11.82% реакций от общего числа подписчиков.
  • Охват публикаций: В среднем каждый пост получает 7 525 просмотров. В течение первых суток публикация набирает 5 080 просмотров.
  • Реакции и взаимодействия: Аудитория активно поддерживает контент: среднее количество реакций на один пост — 16.
  • Тематические интересы: Контент сосредоточен на ключевых темах, таких как аналитика, sql, данными, datalens, csv.

📝 Описание и контентная политика

Автор описывает ресурс как площадку для выражения субъективного мнения:
Понятно про анализ данных, технологии, нейросети и, конечно, SQL. Услуги — leftjoin.ru Курсы по аналитике — https://stepik.org/users/431992492 Автор — @valiotti Реклама — @valiotti Перечень РКН: https://tapthe.link/PpkTHavwS

Благодаря высокой частоте обновлений (последние данные получены 03 июля, 2026) канал поддерживает актуальность и высокий уровень охвата публикаций. Аналитика показывает, что аудитория активно взаимодействует с контентом, что делает его важной точкой влияния в категории Технологии и приложения.

42 992
Подписчики
-1724 часа
-1267 дней
-69830 день
Архив постов
LEFT JOIN
42 982
Парсим данные каталога сайта, используя Beautiful Soup (часть 1) http://leftjoin.ru/all/parsim-dannye-kataloga-sayta-ispolzuya-beautiful-soup-chast-1/

LEFT JOIN
42 982
Карта Machine Learning алгоритмов http://leftjoin.ru/all/karta-machine-learning-algoritmov/

LEFT JOIN
42 982

LEFT JOIN
42 982
Данные удобно записать в .csv-файл, чтобы в следующий раз дополнить статистику: with open('hyper_receipts.csv', 'a') as f: my_products.to_csv(f, header=True)

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
В завершение элементарно получим описательные статистики в текстовом виде командой .describe(): my_products.describe()

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
«Шапка» чековых данных Можно построить гистограмму покупок или посмотреть на все в виде «ящика с усами»: import matplotlib.pyplot as plt %matplotlib inline my_products['sum'].plot(kind='hist', bins=20) plt.show() my_products['sum'].plot(kind='box') plt.show()

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
Чек из гипермаркета «Лента», QR-код, который нас интересует, обведен Что это значит для нас, аналитиков данных? Что мы можем лучше узнать себя, свои потребности и получить интересные данные о собственных покупках. Попробуем в рамках серии постов собрать небольшой прототип приложения, которое позволит строить динамику своих покупок. Итак, начнем с того, что в каждом чеке есть QR-code, если его распознать, то мы получим следующую строку: t=20190320T2303&s=5803.00&fn=9251440300007971&i=141637&fp=4087570038&n=1 В данной строке содержатся: t — timestamp, время, когда вы осуществили покупку s — сумма чека fn — кодовый номер fss, потребуется далее в запросе к API i — номер чека, он нам потребуется далее в запросе к API fp — параметр fiscalsign, потребуется далее в запросе к API В рамках решения первого шага нашей задачи мы будем парсить данные чека и собирать их в pandas dataframe, используя модули Python. Мы воспользуемся API (https://habr.com/ru/post/358966/), который отдает данные по чеку с сайта налоговой. В начале получим аутентификационные данные: import requests your_phone = '+7XXXYYYZZZZ' #нужно указать ваш телефон, на него придет СМС с паролем r = requests.post('https://proverkacheka.nalog.ru:9999/v1/mobile/users/signup', json = {"email":"email@email.com","name":"USERNAME","phone":your_phone})В результате выполнения POST-запроса мы получим пароль в виде SMS на указанный мобильный телефон. Далее, мы будем использовать его в переменной pwd Теперь распарсим нашу строку со значениями из QR-кода: import re qr_string='t=20190320T2303&s=5803.00&fn=9251440300007971&i=141637&fp=4087570038&n=1' t=re.findall(r't=(\w+)', qr_string)[0] s=re.findall(r's=(\w+)', qr_string)[0] fn=re.findall(r'fn=(\w+)', qr_string)[0] i=re.findall(r'i=(\w+)', qr_string)[0] fp=re.findall(r'fp=(\w+)', qr_string)[0]Будем использовать полученные переменные для извлечения данных. В посте на Хабре (https://habr.com/ru/post/358966/) довольно подробно изучены статусы ошибок при формировании запроса к API, не буду повторять эту информацию. В начале необходимо проверить, что по данному чеку есть данные, формируем GET-запрос. headers = {'Device-Id':'', 'Device-OS':''} payload = {'fiscalSign': fp, 'date': t,'sum':s} check_request=requests.get('https://proverkacheka.nalog.ru:9999/v1/ofds/*/inns/*/fss/'+fn+'/operations/1/tickets/'+i,params=payload, headers=headers,auth=(your_phone, pwd)) print(check_request.status_code)В запросе необходимо указать headers, хотя бы пустые. В моем случае GET-запрос возвращает ошибку 406, из чего я понимаю, что такой чек находится. Если не указать сумму или дату, то GET-запрос вернет ошибку 400 — bad request. Переходим к самому интересному, получаем данные чека: request_info=requests.get('https://proverkacheka.nalog.ru:9999/v1/inns/*/kkts/*/fss/'+fn+'/tickets/'+i+'?fiscalSign='+fp+'&sendToEmail=no',headers=headers,auth=(your_phone, pwd)) print(request_info.status_code) products=request_info.json()Должны получить код 200 (успешное выполнение GET-запроса), а в переменной products — все, что относится к нашему чеку. Чтобы работать с этими данными воспользуемся pandas и преобразуем все в dataframe. import pandas as pd from datetime import datetime my_products=pd.DataFrame(products['document']['receipt']['items']) my_products['price']=my_products['price']/100 my_products['sum']=my_products['sum']/100 datetime_check = datetime.strptime(t, '%Y%m%dT%H%M') #((https://docs.python.org/3/library/datetime.html#strftime-and-strptime-behavior отформатируем дату)) my_products['date']=datetime_check my_products.set_index('date',inplace=True)Теперь мы имеем рабочий pandas.dataframe с чеками, визуально это выглядит так:

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
Собираем данные с чеков гипермаркетов на Python http://leftjoin.ru/all/sobiraem-dannye-s-chekov-gipermarketov-na-python/ Недавно, покупая в очередной раз продукты в гипермаркете, вспомнил, что согласно ФЗ-54 любой оператор торговли, который пробивает кассовый чек, обязан отправлять данные чека в налоговую.

LEFT JOIN
42 982
Данную воронку можно отобразить в дашборде и добавить к ней фильтры / параметры

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
Аккуратно выбираем параметры, чтобы получить желаемый результат В итоге мы получаем воронку конверсий из одной цели в другую:

LEFT JOIN
42 982
photo content

LEFT JOIN
42 982
Выпадающее меню с выбором источников данных (в консоли — слева) Теперь научимся делать funnel-визуализацию. Для этого пишем следующий SQL-запрос: select 'Добавление товара в корзину' as step_name, ga_goal1Completions as goalCompletion from query_8 union all select 'Просмотр корзины' as step_name, ga_goal2Completions from query_8 union all select 'Оформление заказа' as step_name, ga_goal3Completions from query_8В данном случае query_8 — это как раз таблица с результатами запроса к источнику данных Google Analytics. Настроим визуализацию:

LEFT JOIN
42 982
Строим funnel-репорт в redash http://leftjoin.ru/all/stroim-funnel-report-v-redash/ Итак, мы планировали разобрать Funnel-визуализацию отчета в redash. В первую очередь, построим запрос к подключенному нами источнику данных (http://leftjoin.ru/all/kak-podklyuchit-google-analytics-k-redash/) — google analytics. Прямо вот такой текст необходимо положить в консоль запроса: { "ids": "ga:128886640", "start_date": "30daysAgo", "end_date": "yesterday", "metrics": "ga:users,ga:goal1Completions,ga:goal2Completions,ga:goal3Completions" }Мы данном запросе мы просим API Google Analytics отдать данные за последние 30 дней по аккаунту GA: 128886640. Мы хотим увидеть число пользователей и число выполнения целей 1, 2 и 3. В итоге получаем таблицу следующего вида: ga:users ga:goal1Completions ga:goal2Completions ga:goal3Completions 3,926 105 41 32 Отлично, это именно то, что нам нужно для построения воронки. Расскажу об одной очень полезной фиче Redash: query-results. Чтобы подключить таблицы с результатами выполнения запросов, идем в Data Sources и ищем query-results (beta). Подключаем новый источник данных. Теперь у нас появилась возможность обращаться к результатам запросов redash. Так, например, мы можем воспользоваться результатами запроса к Google Analytics. Как это сделать? Необходимо выбрать слева источник данных query-results:

LEFT JOIN
42 982
Выбираем созданный ранее JSON файл Пишем запрос к новому источнику данных Именно в таком виде запрос выполняется в консоли redash: { "ids": "ga:128886640", "start_date": "30daysAgo", "end_date": "yesterday", "metrics": "ga:users,ga:newUsers,ga:goal1Starts,ga:goal2Completions,ga:goal3Starts,ga:transactions,ga:transactionRevenue", "dimensions": "ga:date" }Как узнать параметры для выполнения запроса? У Google есть отличный ресурс Query Explorer (https://ga-dev-tools.appspot.com/query-explorer/), в котором можно найти все необходимые метрики и измерения, которые доступны в Google Analytics. Надеюсь, данная инструкция оказалась вам полезной, далее мы разберемся как построить воронку целей в Redash на основании данных из Google Analytics.