This media is not supported in your browser
VIEW IN TELEGRAM
Блокноты Jupyter отлично подходят для изучения данных.
Но они не так хороши для визуализации данных.
Попробуйте библиотеку с открытым исходным кодом на
Python
, которая поможет вам создавать информативные дашборды ↓▪ Github
pip install panel
@sqlhubPlease open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥6👍4
🔑 Знание регулярных выражений поднимает вас над общей серой массой, так что не бойтесь выделяться)
Regex и
🔵 типичное имя пользователя —
🔵
🔵
под это выражение подходит
не подходит
🔵
🔵
Вообще, есть очень удобный сайт regex101.com для составления regex, use it
@sqlhub
Regex и
~
в SQL помогут вам найти абсолютно всё, вот примеры некоторых особенно полезных регулярок:^[a-z0-9_-]{3,16}$
; начало строки (^
), потом любая буква (a-z
), число (0-9
), символ подчёркивания/дефис. Нам нужно от 3 до 16 этих символов ({3,16}
), потом конец строки ($
)^[a-z0-9_-]{6,18}$
— типичный пароль, должно быть от 6 до 18 символов^([a-z0-9_\.-]+)@([\da-z\.-]+)\.([a-z\.]{2,6})$
— типичный email; под это выражение подходит
[email protected]
, не подходит
[email protected]
(TLD длинный)^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$
— типичный URL из латинских букв; https://net.tutsplus.com/about
подходит под это выражение https://google.com/some/file!.html
не подходит под это выражение ^<([a-z]+)([^<]+)*(?:>(.*)<\/\1>|\s+\/>)$
— тег htmlВообще, есть очень удобный сайт regex101.com для составления regex, use it
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥10❤3
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤3🔥2
CASE
Тут ниже представлена попытка заNULLить значение, если оно равно чему-то.
, CASE WHEN sdate = '1900-01-01' THEN NULL ELSE sdate END sdate
, CASE WHEN mdate = '1900-01-01' THEN NULL ELSE mdate END mdate
Но ведь в PostgreSQL есть функция
nullif
, которая делает ровно то же самое.NULLIF(значение1, значение2)
Функция
NULLIF
выдаёт значение NULL
, если значение1 равно значение2; в противном случае она возвращает значение1. Это может быть полезно для реализации обратной операции к COALESCE
. В частности, для примера, показанного выше:SELECT NULLIF(value, '(none)') ...
В данном примере если
value
равно (none)
, выдаётся null
, а иначе возвращается значение value
.То есть в примере выше можно переписать короче и понятнее:
, NULLIF(sdate, '1900-01-01') sdate
, NULLIF(mdate, '1900-01-01') mdate
#PostgreSQL
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25🔥5❤4
PyGraphistry полезная это библиотека Python с ИИ для визуальных графов, позволяющая извлекать, преобразовывать, анализировать и визуализировать большие графы вместе со сквозными сеансами графического сервера Graphistry.
Библиотека создана специально для больших графов.
Пользовательский механизм рендеринга WebGL клиента рендерит до 8 миллионов узлов + ребер за раз, а большинство клиентских GPU поддерживают от 100 000 до 2 миллионов элементов.
Мощный механизм аналитики графического процессора на стороне сервера поддерживает графы еще большего размера.
Graphistry сглаживает графические рабочие процессы в экосистеме PyData, включая датафреймы Pandas/Spark/Dask, графического процессора Nvidia RAPIDS, графы GPU, графовые нейросети DGL/PyTorch и различные коннекторы данных.
PyGraphistry — это дружественный и оптимизированный нативный интерфейс PyData для API-интерфейсов REST Graphistry, не зависящих от языка. Можно использовать PyGraphistry с традиционными источниками данных Python, такими как CSV, SQL, Neo4j, Splunk и другими.
▪Github
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤4🥰4🔥2
inet
, то для IPv4-адресов все будет тривиально:'0.0.0.0'::inet + ipnum::bigint
А вот для преобразования числа к формату IPv6-адреса придется проявить немного изобретательности:
— "математически" разбиваем число на 8 двухбайтовых сегментов по (2 ^ 16) ^ i
— каждое значение преобразуем в шестнадцатеричную систему счисления и добиваем лидирующими нулями
— склеиваем сегменты через двоеточие и кастуем к
inet
array_to_string(ARRAY(
SELECT
lpad(to_hex(trunc(
ipnum % (2::numeric(39,0) ^ ((i + 1) * 16)) / (2::numeric(39,0) ^ (i * 16))
)::integer), 4, '0')
FROM
generate_series(7, 0, -1) i
), ':')::inet
В принципе, после этого мы можем "свернуть"
ip_from
и ip_to
в подсеть, не обращая внимания на исходный формат:inet_merge(ip_from, ip_to) subnet
А если проиндексируем эти подсети с помощью gist...
CREATE INDEX ON country_inet USING gist(subnet inet_ops);
... то сможем по индексу быстро определять принадлежность произвольного IPv4/IPv6-адреса подсетям с помощью соответствующих операторов примерно таким запросом:
SELECT
*
FROM
country_inet
WHERE
subnet >> '8.8.8.8' AND
country <> '-'
ORDER BY
masklen(subnet) DESC
LIMIT 1;
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13🔥7👍6🥰1
🎯 Tarantool Column Store — новая гибридная СУБД с поддержкой как колоночного, так и строчного хранения и обработки данных в режиме реального времени.
Транзакционные и аналитические системы в одном месте – возможность проводить анализ на актуальных данных
Моментальный анализ – все данные доступны в одной СУБД
Быстрая обработка данных – можно обрабатывать задачи AI
Совместимость – обновление работает с российскими операционными системами Astra Linux, РЕД ОС и «Альт».
@sqlhub
Транзакционные и аналитические системы в одном месте – возможность проводить анализ на актуальных данных
Моментальный анализ – все данные доступны в одной СУБД
Быстрая обработка данных – можно обрабатывать задачи AI
Совместимость – обновление работает с российскими операционными системами Astra Linux, РЕД ОС и «Альт».
@sqlhub
❤9👍3🔥1
Gephi Lite
— это его облегчённая веб-версия. Пользователи могут видеть все параметры сети, использовать фильтры, настраивать визуализацию графа, сохранять и экспортировать файлы.
🔗 gephi.org/gephi-lite
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤3🔥2
Forwarded from Борис опять
ОУ Карьера курс ML_Pro 27.02.24 (3).pdf
3.5 MB
Презентация с моего вебинара для ОТУС: Что нужно джунам знать про найм в ML/DS в начале карьеры
Я не виню вас, если вы не готовы слушать меня два с половиной часа. Поэтому вот презентация, там вы найдете 80% контента
Я не виню вас, если вы не готовы слушать меня два с половиной часа. Поэтому вот презентация, там вы найдете 80% контента
❤5👍4🥰1
⚡️ SpeedML - это библиотека Python, целью которой является ускорение процесса разработки конвейера машинного обучения.
Она объединяет часто используемые пакеты ML, такие как
• Github
@sqlhub
Она объединяет часто используемые пакеты ML, такие как
Pandas, NumPy, Scikit-learn, XGBoost и Matplotlib. SpeedML
также предоставляет функциональные возможности для автоматизированного EDA.pip install speedml
• Github
@sqlhub
❤9👍6🔥5
Для достижения этой цели Dolt использует Prolly Tree-хранилище схемы и данных, представленных в виде графа. Таким образом достигается контроль версий базы данных на уровне хранилища.
Контроль версий БД в стиле Git предоставляет ряд полезных фичей:
— Мгновенный откат к любому предыдущему состоянию
— Полный журнал аудита с возможностью запроса, содержащий все данные с момента их создания.
— Несколько развивающихся ветвей данных
— Возможность объединения ветвей данных
— Быстрая синхронизация с удаленными версиями для резервного копирования или децентрализованной совместной работы.
— Запрашиваемые различия (т. е. различия) между версиями
Механизм хранения Dolt построен на графе коммитов Prolly Trees в стиле Git. Схема таблицы и данные хранятся в Prolly Trees. Корни этих деревьев Prolly вместе с другими метаданными хранятся в графе коммитов, чтобы обеспечить контроль версий в стиле Git.
🔗 Подробнее можно почитать на официальной страничке
🔗Github
@sqlhub
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥18👍5❤2