NULL++ – Telegram
NULL++
75 subscribers
41 photos
12 links
Канал для тех, кто хочет развиваться как Data Analyst, Data Engineer и BI-Analyst
@HexMikhail
Download Telegram
Всем привет!
Сегодня я решил написать пост не о работе 😅
Вчера вечером я посетил нашу филармонию, где исполняли музыку из фильмов (и игр) Гарри Поттера. Мне очень нравится эта вселенная, несмотря на многие логические нестыковки :)
Я читал книги (в электронном варианте) много позже выхода всех фильмов. Я слушал раз 7 аудиоверсию в исполнении великолепного Александра Клюквина. И даже слушал их в оригинале в исполнении Стивена Фрая!
Самое завораживающее, что стало для меня сюрпризом, это рисование песком прямо во время концерта картин по мотивам фильмов.
Вообще, этот год стал для меня своеобразным годом Гарри Поттера 😁
В новогодние праздники мы с детьми начали просмотр фильмов, в апреле я побывал в музее Гарри Поттера в Нижнем Новгороде, на день рождения мне подарили сувенирный комплект книг (конечно же РОСМАН), которые я начал читать по вечерам своим детям. И вот вчера был на концерте от которого у меня остались исключительно положительные впечатления.
Думаю, что надо будет сходить ещё раз как-нибудь 😊
🔥52
Всем привет!
Сегодня я решил арендовать простенький VPS для того, чтобы там крутились PostgreSQL и всякие Python скрипты)
Долго искал, где есть возможность буквально в пару кликов всё настроить и чтобы было недорого, и остановился на beget.com (не реклама, если что).
Хочу для начала перенести один свой учебный проект. Когда всё получится, я запилю об этом пост.

@nullpp #PostgreSQL #VPS #Python
👍7🔥1
Всем привет! :)
Как часто вам приходится генерировать какие-то данные? Бывает так, что создание синтетических данных просто необходимо. Например, для заполнения пропусков в датасете.
Кто-то скажет, что лучше удалить все пропуски и фиг с ним! Но это может привести к нежелательным последствиям.
Например, если удалять строки, то мы можем потерять большой объем данных или это может внести различного рода смещение (если пропуски не случайны). А если удалять столбцы, то мы можем потерять потенциально полезный признак для анализа.
Поэтому сначала смотрят каков процент пропусков и уже потом решают, что с ним делать. Может и действительно, легче удалить 15 строк из 10000, чем возиться с ними.
Для исправления ситуации обычно используется что-то, что очень быстро и легко "вставить".
Самый распространенный пример - это замена статистическими показателями. Это может быть среднее значение mean, медиана median или мода moda (часто встречающееся значение, обычно используется для категориальных данных).
Или можно просто заменить константой, предыдущим значением, интерполяцией.
А можно сгенерировать значение, подчиняющееся необходимым нам правилам.
Изучающие python, уверен, прекрасно знают модуль rnd для генерации. Но я, выполняя один учебный проект, наткнулся на интересную библиотеку faker, которая умеет генерировать не только числа, но и много всего интересного.
Вот простой пример использования этой библиотеки.
Сначала стандартная установка модуля:
pip install faker
А затем его использование:
from faker import Faker
fake = Faker('ru_RU')
print(fake.country())
print(fake.city_name())
print(fake.user_name())
print(fake.email())

И вот, вооружившись faker-ом и random-ом, я пошёл выполнять проект по генерации чеков продуктовых магазинов =)
О том, что у меня получилось, я расскажу в следующем посте.

@nullpp #Python #пропуски #генерация_данных
🔥6
Жаль, что hh закрывает диалог сразу после отказа компании xD
😁8💯1
А ещё я принял активное участие в написании наших (Денвика) статей по созданию интересных визуализаций в DataLens. Сегодня их как раз опубликовали в общем доступе)

Чарты с использованием функций AGO() и AT_DATE()
https://vk.cc/cQfqKe

Добавление всплывающей подсказки в чарт-таблицу
https://vk.cc/cQfqMD

#Яндекс #Yandex #DataLens #Денвик
👍2🔥2
Всем привет!
Наконец-то я занялся финальным проектом в своём обучении. Сначала создал БД и таблицы в ней для будущей выгрузки.
Написал на Python сбор данных от предоставленного API с последующей выгрузкой полученных данных в PostgreSQL.
Создал пока что первую страницу дашборда, которая должна дать общую картину состояния бизнеса, показать ключевые метрики и их динамику во времени. Это "дашборд для руководителя", который отвечает на вопрос "Как идут наши продажи в целом?"
Когда я доделаю всё, и работу оценят, я выложу исходники + ссылку на дашборд)

@nullpp #Python #PostgreSQL #Учеба
🔥9👍3
NULL++
Всем привет! Наконец-то я занялся финальным проектом в своём обучении. Сначала создал БД и таблицы в ней для будущей выгрузки. Написал на Python сбор данных от предоставленного API с последующей выгрузкой полученных данных в PostgreSQL. Создал пока что первую…
На прошлой неделе я доделал финальный проект и сдал его. Но пока что фидбэка не было)
А значит, я пока покажу вам скриншоты дашборда, как это выглядит. Я честно постарался, чтобы любое исследование по этим данным можно было провести прямо в DataLens. Такой подход, я считаю, показывает самодостаточность созданного дашборда для полноценного анализа ситуации и принятия решений.

@nullpp #Python #PostgreSQL #Учеба
🔥4
NULL++
На прошлой неделе я доделал финальный проект и сдал его. Но пока что фидбэка не было) А значит, я пока покажу вам скриншоты дашборда, как это выглядит. Я честно постарался, чтобы любое исследование по этим данным можно было провести прямо в DataLens. Такой…
А давайте я немного поясню, что происходит)
Вторая вкладка "Анализ продаж маркетплейса" позволяет понять портрет и поведение клиентской базы. Ответить на вопросы "Кто наши клиенты?" и "Насколько они лояльны?". На ней, кроме индикаторов (которые и так понятны), присутствует ещё несколько табличек.
В списках Топ покупателей по количеству заказов и по сумме затрат можно менять количество значений с помощью селектора.
Таблица RFM-анализа формируется "на лету" по SQL-запросу к БД, учитывая параметры ПЕРИОДА, и выдаёт актуальный результат на заданный период в дашборде.
Когортный анализ формируется "на лету" по SQL-запросу, учитывая параметры ПЕРИОДА. Анализ строит помесячные когорты, так как покупки сами по себе дорогие и нечастые. Показывает % уникальных клиентов от первого периода.
LTV также формируется "на лету" по SQL-запросу, учитывая параметры ПЕРИОДА. Сам анализ строит помесячные когорты, так как покупки сами по себе дорогие и нечастые. Показывает среднюю выручку на уникального клиента.
🔥4
NULL++
На прошлой неделе я доделал финальный проект и сдал его. Но пока что фидбэка не было) А значит, я пока покажу вам скриншоты дашборда, как это выглядит. Я честно постарался, чтобы любое исследование по этим данным можно было провести прямо в DataLens. Такой…
Третья вкладка "Анализ товаров" позволяет оценить эффективность товарного ассортимента. Ответить на вопросы "Какие товары продаются хорошо?", "На каких товарах мы больше всего зарабатываем?" и "Какие товары неликвидны?".
В списках Топ и Антитоп можно менять количество значений с помощью соответствующего селектора.
Особенность таблицы ABC/XYZ-анализа в том, что она (как и на предыдущей вкладке было) формируется "на лету" по SQL-запросу к БД, учитывая параметры ПЕРИОДА и МАСШТАБА. То есть выдаёт актуальный результат на заданный период в дашборде.
+ Есть градация по цвету для ABC/XYZ (зелёный-жёлтый-красный) для быстрого понимания результата.
P.S. на второй вкладке по цветам также сделан RFM-анализ
🔥4
Всем привет!
Мою работу проверили и дали отличный фидбек. Все советы и замечания я уже поправил, поэтому могу представить на общее обозрение)
Гит: https://github.com/mishandri/DA-final-project
Сам дашборд (светлая тема): https://datalens.yandex/6eiukr5xyukyr?_theme=light
Сам дашборд (тёмная тема): https://datalens.yandex/6eiukr5xyukyr?_theme=dark

А ещё я очень рад, что завершил данный курс обучения. Это было очень классно, познавательно и очень-очень интересно.

В планах у меня теперь завершить курс по "BI-аналитике" (остались финальные задания), а затем я приступлю к курсу "Инженер данных", который тоже обещает быть не менее клёвым
🔥5👏1