Продолжаем цикл материалов про работу с веб-фреймворком Dash. Ранее мы рассказывали про развертывание дашбордов на AWS Elastic Beanstalk. Если у вас уже есть виртуальная машина на Amazon EC2, то дашборд можно развернуть как веб-приложение на вашем инстансе. О том, как это сделать, читайте в новом материале на нашем сайте:
https://leftjoin.ru/all/deploy-dashboard-ec2/
https://leftjoin.ru/all/deploy-dashboard-ec2/
LEFT JOIN
Деплой дашборда на виртуальной машине Amazon EC2
Мы уже рассказывали о том, как развернуть дашборд с помощью сервиса Elastic Beanstalk от Amazon Web Services. В этом материале расскажем как развертывать дашборды на виртуальной машине Amazon EC2. Подготовка Начало работы с платформой AWS и создание сервера…
Любопытное аналитическое исследование о том, как поменялась предвзятость судей к гостевым командам в виду отсутствия зрителей на стадионе с момента начала COVID.
#link
#link
RunRepeat - Athletic shoe reviews
Referees’ Home-Bias in Football Disappears without Audience [Study]
We analyzed referees’ performances in 1283 games from the top four Eu
Анализа данных с помощью SQL
Достаточно прикольный и полезный гайд по использованию SQL для анализа данных вместо Pandas.
Автор делится рядом любоптных идей: train/test split, линейная регрессия (оказывается, есть по умолчанию в PostgreSQL) и много других полезностей, собранных в одном месте, рекомендую!
Кстати, Mode когда-то тоже предлагали несколько изощренный способ построения регрессии с помощью SQL.
#link
Достаточно прикольный и полезный гайд по использованию SQL для анализа данных вместо Pandas.
Автор делится рядом любоптных идей: train/test split, линейная регрессия (оказывается, есть по умолчанию в PostgreSQL) и много других полезностей, собранных в одном месте, рекомендую!
Кстати, Mode когда-то тоже предлагали несколько изощренный способ построения регрессии с помощью SQL.
#link
Hakibenita
Practical SQL for Data Analysis
What you can do without Pandas
И немножко околокликхаусных новостей:
▪ Altinity рассказывает об использовании Superset на Clickhouse (погдлядел в @superset_ru). Материал в нескольких частях.
▪ Создан профайл для работы с Clickhouse через dbt, ссылка на github (сам нашел).
Еще не тестировали, но очень интересно.
▪ Altinity рассказывает об использовании Superset на Clickhouse (погдлядел в @superset_ru). Материал в нескольких частях.
▪ Создан профайл для работы с Clickhouse через dbt, ссылка на github (сам нашел).
Еще не тестировали, но очень интересно.
Altinity | Run open source ClickHouse® better
Visualizing ClickHouse® Data with Apache Superset, Part 1: Installation
Superset offers creative displays for ClickHouse data. Learn how to install Superset and connect to ClickHouse servers.
А вот Дмитрий в комментариях пишет о результатах тестирования профайла dbt для Clickhouse.
Forwarded from Дмитрий Володин
Тестировали профайл клика для dbt. Сырой, особенно тяжко, если клик on cluster, потому что этот функционал не реализован. Но если клик на одной ноде - всё ок.
Также есть проблемы с тем, что настройки подключения не передать в профайле. Лечится созданием специальной роли по dbt скрипты, чтобы использовались подходящие настройки.
Ну и хочется материализации специфичные для кликхауса. Типа матпредставлений и, может быть, движков таблиц кафка и прочих подобных. Думаем допиливать под себя.
В движках, кстати, есть проблема. В конфиге модели указывается просто *MergeTree, без скобок, соответственно без параметров. Мне бывает нужно в ReplacingMergeTree указать таймстемп, особенно если оставить надо не последнюю пришедшую запись.
Резюме краткое: многое лечится кастомными макросами, благо dbt использует те, что в проекте, если находит несколько с одинаковым именем. Но хочется, чтобы адаптер не заглох. Будем контрибьютить, если
Также есть проблемы с тем, что настройки подключения не передать в профайле. Лечится созданием специальной роли по dbt скрипты, чтобы использовались подходящие настройки.
Ну и хочется материализации специфичные для кликхауса. Типа матпредставлений и, может быть, движков таблиц кафка и прочих подобных. Думаем допиливать под себя.
В движках, кстати, есть проблема. В конфиге модели указывается просто *MergeTree, без скобок, соответственно без параметров. Мне бывает нужно в ReplacingMergeTree указать таймстемп, особенно если оставить надо не последнюю пришедшую запись.
Резюме краткое: многое лечится кастомными макросами, благо dbt использует те, что в проекте, если находит несколько с одинаковым именем. Но хочется, чтобы адаптер не заглох. Будем контрибьютить, если
Timescale DB подняли инвестиции в размере 40 млн долларов. В статье о том, что Timescale DB — это Postgres для Time Series data, что вообще такое Time series data и как появилась Timescale DB.
Timescale Blog
$40 million to help developers measure everything that matters
We just raised a $40M Series B to bring our relational database for time-series to developers everywhere. Learn how we got started and what’s still yet to come 🚀.
Pattern matching в Python
Это весной вышла альфа-версия Python 3.10, в которой, помимо прочего, реализовано структурное сопоставление шаблонов (structural pattern matching).
Раньше как таковой конструкции типа switch/case в Python не существовало. Насущные проблемы решались с помощью конструкции if/elif/else или поиском по словарю. Такие конструкции объемны и затрудняют читабельность кода.
Pattern matching в новой версии Python реализован через конструкцию match/case. Станет ли это панацеей для разработчиков, судить рано. Но как применяется match/case на практике уже можно посмотреть в нашем переводе статьи от InfoWorld.
https://leftjoin.ru/all/pattern-matching-v-python/
Это весной вышла альфа-версия Python 3.10, в которой, помимо прочего, реализовано структурное сопоставление шаблонов (structural pattern matching).
Раньше как таковой конструкции типа switch/case в Python не существовало. Насущные проблемы решались с помощью конструкции if/elif/else или поиском по словарю. Такие конструкции объемны и затрудняют читабельность кода.
Pattern matching в новой версии Python реализован через конструкцию match/case. Станет ли это панацеей для разработчиков, судить рано. Но как применяется match/case на практике уже можно посмотреть в нашем переводе статьи от InfoWorld.
https://leftjoin.ru/all/pattern-matching-v-python/
LEFT JOIN
В Python 3.10 появился pattern matching
Этот материал — перевод статьи «How to use structural pattern matching in Python» В новом релизе Python 3.10 появились операторы case/match, которые отвечают за реализацию в языке синтаксиса pattern-matching. Python, несмотря на его простоту и популярность…
Библиотека Clustergram для Python
Интересный пост про библиотеку Clustergram для Python. При построении кластеризации методом K-Means число кластеров заранее неизвестно и традиционный подход предполагает построение так называемого Elbow-chart (да, локоть), который показывает общую внутригрупповую сумму квадратов для разного числа кластеров. Этот график не очень информативен для принятия однозначного решения по поводу числа кластеров.
Предлагаемая библиотека усовершенствует подход к обнаружению числа кластеров: позволяет визуализировать разбиение на кластеры и толщиной линии отображает дополнительную информацию, получаемую от этого разбиения.
Интересный пост про библиотеку Clustergram для Python. При построении кластеризации методом K-Means число кластеров заранее неизвестно и традиционный подход предполагает построение так называемого Elbow-chart (да, локоть), который показывает общую внутригрупповую сумму квадратов для разного числа кластеров. Этот график не очень информативен для принятия однозначного решения по поводу числа кластеров.
Предлагаемая библиотека усовершенствует подход к обнаружению числа кластеров: позволяет визуализировать разбиение на кластеры и толщиной линии отображает дополнительную информацию, получаемую от этого разбиения.
Статья про то, как AirBnb добились констистентности метрик. Внутри про используемые решения и про их архитектуру данных.
#link
#link
Medium
How Airbnb Achieved Metric Consistency at Scale
Part-I: Introducing Minerva — Airbnb’s Metric Platform
Рекомендации по использованию PostgreSQL в качестве хранилища данных. Внутри статьи любопытная ссылка на предостережение по использованию CTE в PostgreSQL (все от того же автора, на которого недавно ссылался по SQL для анализа данных)
Narrator Data Blog | Narrator.ai
Using PostgreSQL as a Data Warehouse
With some tweaking Postgres can be a great data warehouse. Here's how to configure it.
Часто для ML-моделей нужно подготовить датасет: масштабировать или нормализовать признаки, чтобы получить корректные результаты работы алгоритма. Такого рода подготовку можно провести прямо в процессе выгрузки данных из БД.
В новом материале мы собрали несколько методов для нормализации атрибутов средствами SQL сразу двумя способами: через подзапрос и с помощью оконной функции.
https://leftjoin.ru/all/data-scaling-with-sql/
В новом материале мы собрали несколько методов для нормализации атрибутов средствами SQL сразу двумя способами: через подзапрос и с помощью оконной функции.
https://leftjoin.ru/all/data-scaling-with-sql/
leftjoin.ru
Нормализация данных через запрос в SQL
Georgia Institute of Technology. Online Master of Science in Analytics.
В 2020 году я загорелся желанием освежить свое фундаментальное образование. На рынке сейчас представлено очень много разных курсов, но мне было интересно посмотреть как выглядит изнутри система образования в США. В последние годы, и особенно после начала пандемии COVID-19, онлайн-образование набрало невероятную популярность. Теперь даже топовые американские ВУЗы предлагают получить магистерскую степень онлайн. И я решил пройти этот путь 😎
Несмотря на то, что у меня уже есть наша PhD, я подал заявку на программу OMSA (Online Masters of Science in Analytics) в Georgia Institute of Technology. Ранее я уже приводил ряд ссылок на курсы этого ВУЗа (доступные бесплатно), но сам решил поступать на полноценную магистерскую программу. Меня привлекло то, что Georgia Tech занимает высокие позиции в рейтингах по Computer Science среди американских ВУЗов.
Надо сказать, что процесс поступления занял больше полугода. Нужно было предоставить сертификат TOEFL с высоким баллом (не менее 100 из 120), три рекомендательных письма из своей alma mater, сопроводительное письмо, CV и всю информацию о предыдущем образовании. И в ноябре 2020-го я получил долгожданное письмо о том, что меня приняли (приложил его)! Теперь я принадлежу к коммьюнити с маскотом пчелы 🐝 (Buzz).
Само образование построено в темпе “self-paced”, то есть в семестр можно набрать столько курсов, сколько сможешь унести (но, кажется, не более трех или четырех). На старте с учетом своего графика я взял только один курс — ISYE6501 (Intro Analytics Modeling), который является одним из обязательных и фундаментальных в программе. И вот позавчера получил свою первую оценку B за его прохождение. 🍾
В связи с этим ниже опрос — рассказать ли об этом опыте подробнее? Насколько вам интересен контент об американском образовании? Могу поделиться впечатлениями об этом курсе и о следующих: рассказать насколько учеба интенсивна, а содержание полезно.
В 2020 году я загорелся желанием освежить свое фундаментальное образование. На рынке сейчас представлено очень много разных курсов, но мне было интересно посмотреть как выглядит изнутри система образования в США. В последние годы, и особенно после начала пандемии COVID-19, онлайн-образование набрало невероятную популярность. Теперь даже топовые американские ВУЗы предлагают получить магистерскую степень онлайн. И я решил пройти этот путь 😎
Несмотря на то, что у меня уже есть наша PhD, я подал заявку на программу OMSA (Online Masters of Science in Analytics) в Georgia Institute of Technology. Ранее я уже приводил ряд ссылок на курсы этого ВУЗа (доступные бесплатно), но сам решил поступать на полноценную магистерскую программу. Меня привлекло то, что Georgia Tech занимает высокие позиции в рейтингах по Computer Science среди американских ВУЗов.
Надо сказать, что процесс поступления занял больше полугода. Нужно было предоставить сертификат TOEFL с высоким баллом (не менее 100 из 120), три рекомендательных письма из своей alma mater, сопроводительное письмо, CV и всю информацию о предыдущем образовании. И в ноябре 2020-го я получил долгожданное письмо о том, что меня приняли (приложил его)! Теперь я принадлежу к коммьюнити с маскотом пчелы 🐝 (Buzz).
Само образование построено в темпе “self-paced”, то есть в семестр можно набрать столько курсов, сколько сможешь унести (но, кажется, не более трех или четырех). На старте с учетом своего графика я взял только один курс — ISYE6501 (Intro Analytics Modeling), который является одним из обязательных и фундаментальных в программе. И вот позавчера получил свою первую оценку B за его прохождение. 🍾
В связи с этим ниже опрос — рассказать ли об этом опыте подробнее? Насколько вам интересен контент об американском образовании? Могу поделиться впечатлениями об этом курсе и о следующих: рассказать насколько учеба интенсивна, а содержание полезно.
Georgia Tech Professional Education
Online Master of Science in Analytics
Georgia Tech’s Online Master of Science in Analytics (OMS Analytics) is a top-5 nationally ranked data science and analytics program. As an interdisciplinary data science and analytics degree program, OMS Analytics leverages three of Georgia Tech’s top-ranked…
Интересно ли почитать об американском образовании (в частности, Georgia Tech)
Anonymous Poll
83%
Да, весьма
17%
Нет, не очень
SQLiteViz — оффлайн библиотека для создания диаграмм Plotly на SQLite бд или .csv-файлах. Нечто похожее на Redash 🙂
GitHub
GitHub - lana-k/sqliteviz: Instant offline SQL-powered data visualisation in your browser
Instant offline SQL-powered data visualisation in your browser - lana-k/sqliteviz
Процесс обучения на программе OMSA
В опросе большинство высказалось за то, чтобы я продолжил рассказ про магистерскую программу OMSA в Georgia Tech. Начну рассказ с того, как в целом построена программа и какие направления (треки) можно выбрать.
Всего для получения магистерской степени надо набрать 36 credit hours. При этом каждый курс оценивается в 3 credit hours, а за магистерскую диссертацию (master thesis) получаешь 6 credit hours. Счета за программу выставляют каждый семестр, а сумма зависит от того, сколько credit hours вы выбрали в отчетном периоде.
Сама программа разделена на три трека:
1) Analytical Tools — в процессе обучения делается акцент на статистику, эконометрику и методы оптимизации.
2) Business Analytics — представляет собой усредненную бизнес-специализацию. Про этот трек на Reddit шутят, что он для тех, кто хочет просто получить диплом Georgia Tech.
3) Computational Data Analytics — как я понимаю, это направление образовалось на базе программы OMSCS (Master of Science in Computer Science), и фокус сделан на вычислительные методы анализа данных. Именно этот трек обучения я и выбрал.
Однако, прежде чем приступить к основным курсам (majors) каждого трека, надо в обязательном порядке пройти Basic и Advanced междисциплинарные курсы.
BASIC
Три курса, по сути, из каждого направления:
ISYE6501 (Intro to Analytics Modeling) — курс про аналитические инструменты и использование R, который я недавно закончил (скоро расскажу о нем);
CSE6040 (Computing for Data Analysis) — анализ данных с использованием Python;
MGT8803 (Business Fundamentals for Analytics) — какой-то общий бизнес-курс, от которого я отписался.
ADVANCED
CSE6242 (Data and Visual Analytics) — анализ и визуализация данных.
MGT6203 (Data Analytics in Business) — общий курс про применение аналитики в бизнесе.
Два курса по статистике на выбор и один курс из раздела operations research.
А дальше, в зависимости от выбранного трека, можно выбрать курсы из соответствующей колонки на картинке выше.
Возможности Opt-out
От базовых курсов можно отписаться, если соответствующий опыт был получен в вашем предыдущем ВУЗе. У меня такой опыт был, но я посчитал целесообразным оставить курсы ISYE6510 и CSE6040, чтобы посмотреть как они выглядят изнутри. А вот от курса MGT8803 отказался, так как по оценкам студентов он “не очень“.
И вообще, у американцев все продумано — есть целый ресурс, где можно посмотреть отзывы и рейтинги по каждому курсу, примерные ожидания по затрачиваемым часам на прохождение и так далее.
В следующем посте расскажу о том, как устроен процесс обучения на курсе ISYE6501, который я выбрал для весеннего семестра. А потом напишу пост про содержание этого курса.
#gatech #omsa
В опросе большинство высказалось за то, чтобы я продолжил рассказ про магистерскую программу OMSA в Georgia Tech. Начну рассказ с того, как в целом построена программа и какие направления (треки) можно выбрать.
Всего для получения магистерской степени надо набрать 36 credit hours. При этом каждый курс оценивается в 3 credit hours, а за магистерскую диссертацию (master thesis) получаешь 6 credit hours. Счета за программу выставляют каждый семестр, а сумма зависит от того, сколько credit hours вы выбрали в отчетном периоде.
Сама программа разделена на три трека:
1) Analytical Tools — в процессе обучения делается акцент на статистику, эконометрику и методы оптимизации.
2) Business Analytics — представляет собой усредненную бизнес-специализацию. Про этот трек на Reddit шутят, что он для тех, кто хочет просто получить диплом Georgia Tech.
3) Computational Data Analytics — как я понимаю, это направление образовалось на базе программы OMSCS (Master of Science in Computer Science), и фокус сделан на вычислительные методы анализа данных. Именно этот трек обучения я и выбрал.
Однако, прежде чем приступить к основным курсам (majors) каждого трека, надо в обязательном порядке пройти Basic и Advanced междисциплинарные курсы.
BASIC
Три курса, по сути, из каждого направления:
ISYE6501 (Intro to Analytics Modeling) — курс про аналитические инструменты и использование R, который я недавно закончил (скоро расскажу о нем);
CSE6040 (Computing for Data Analysis) — анализ данных с использованием Python;
MGT8803 (Business Fundamentals for Analytics) — какой-то общий бизнес-курс, от которого я отписался.
ADVANCED
CSE6242 (Data and Visual Analytics) — анализ и визуализация данных.
MGT6203 (Data Analytics in Business) — общий курс про применение аналитики в бизнесе.
Два курса по статистике на выбор и один курс из раздела operations research.
А дальше, в зависимости от выбранного трека, можно выбрать курсы из соответствующей колонки на картинке выше.
Возможности Opt-out
От базовых курсов можно отписаться, если соответствующий опыт был получен в вашем предыдущем ВУЗе. У меня такой опыт был, но я посчитал целесообразным оставить курсы ISYE6510 и CSE6040, чтобы посмотреть как они выглядят изнутри. А вот от курса MGT8803 отказался, так как по оценкам студентов он “не очень“.
И вообще, у американцев все продумано — есть целый ресурс, где можно посмотреть отзывы и рейтинги по каждому курсу, примерные ожидания по затрачиваемым часам на прохождение и так далее.
В следующем посте расскажу о том, как устроен процесс обучения на курсе ISYE6501, который я выбрал для весеннего семестра. А потом напишу пост про содержание этого курса.
#gatech #omsa