Forwarded from Data Analysis / Big Data
Data Engineering Weekly #116
Read: https://www.dataengineeringweekly.com/p/data-engineering-weekly-116
Read: https://www.dataengineeringweekly.com/p/data-engineering-weekly-116
Forwarded from Data Analysis / Big Data
Дайджест Python: чем плох Django и как создать бота на GPT-3
Собрали дайджест из лучших новостей и статей по Python с 15 по 31 января про Data Science, веб-разработку, нейросети и приложения.
Читать: «Дайджест Python: чем плох Django и как создать бота на GPT-3»
Собрали дайджест из лучших новостей и статей по Python с 15 по 31 января про Data Science, веб-разработку, нейросети и приложения.
Читать: «Дайджест Python: чем плох Django и как создать бота на GPT-3»
Forwarded from Data Analysis / Big Data
Дайджест Python: чем плох Django и как создать бота на GPT-3
Собрали дайджест из лучших новостей и статей по Python с 15 по 31 января про Data Science, веб-разработку, нейросети и приложения.
Читать: «Дайджест Python: чем плох Django и как создать бота на GPT-3»
Собрали дайджест из лучших новостей и статей по Python с 15 по 31 января про Data Science, веб-разработку, нейросети и приложения.
Читать: «Дайджест Python: чем плох Django и как создать бота на GPT-3»
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
5 лайфхаков Python, которые сделают ваш код более читабельным и элегантным.
https://habr.com/ru/post/714820/
https://habr.com/ru/post/714820/
Хабр
5 лайфхаков Python, которые сделают ваш код более читабельным и элегантным
Привет, Хабр! В этой статье я продемонстрирую 5 трюков Python на понятных для новичков примерах, которые помогут вам писать более элегантный Python код в вашей повседневной работе. 1. Избегайте...
Forwarded from Анализ данных (Data analysis)
Прокачайте свои навыки в сфере IT и аналитики данных — примерьте роль Data Scientist! Участвуйте в бесплатном онлайн-интенсиве, который пройдёт с 9 по 11 февраля. Начало — в 19:00 по московскому времени.
Записывайтесь: 👉 https://clc.to/gayj0w
Сразу после регистрации отправим вам на почту материал по Data Science с полезными ресурсами и советами, где найти первые заказы для портфолио.
За 3 дня вы научитесь:
⚡️ исследовать данные с помощью языка программирования Python;
⚡️ строить модели для реальных кейсов;
⚡️ находить аномалии в данных;
⚡️ автоматизировать решение бизнес-задач с помощью искусственного интеллекта и машинного обучения.
Спикер интенсива — руководитель направления исследования данных в Сбере с семилетним опытом в программировании Анастасия Борнева.
🎉 Участвуйте, задавайте вопросы и получите сертификат на скидку 10 000 рублей на любой курс Skillbox.
Присоединяйтесь!
Записывайтесь: 👉 https://clc.to/gayj0w
Сразу после регистрации отправим вам на почту материал по Data Science с полезными ресурсами и советами, где найти первые заказы для портфолио.
За 3 дня вы научитесь:
⚡️ исследовать данные с помощью языка программирования Python;
⚡️ строить модели для реальных кейсов;
⚡️ находить аномалии в данных;
⚡️ автоматизировать решение бизнес-задач с помощью искусственного интеллекта и машинного обучения.
Спикер интенсива — руководитель направления исследования данных в Сбере с семилетним опытом в программировании Анастасия Борнева.
🎉 Участвуйте, задавайте вопросы и получите сертификат на скидку 10 000 рублей на любой курс Skillbox.
Присоединяйтесь!
Forwarded from Анализ данных (Data analysis)
В этой статье я делюсь шестью малоизвестными, но полезными библиотеками python для работой с данными и не только, которые помогут вам в работе.
▪Читать
▪Зеркло
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Анализ данных (Data analysis)
Используем библиотека hashlib, чтобы почистить память и удалить ненужные данные.
▪Читать
▪ Код
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Хитрый Питон
Вышел релиз SQLAlchemy 2.0, получается довольно интересно:
- Полная поддержка типов: ORM-модели теперь можно делать полностью типизированные, результаты запросов тоже типизированы
- Теперь ORM-модели можно объявлять как MappedAsDataclass и в этом случае на выходе получатся полноценные датаклассы
- Для массовых добавлений/изменений вместо bulk_* методов теперь можно использовать insert-ы и update-ы, которые стали достаточно умными, чтобы делать это одним запросом и поддерживать .returning()
- C-расширения переписали на Cython и обещают повышение их производительности
- Поддержка нового psycopg3 (aka "просто psycopg")
Резюмируя - очень здорово, что в довольно "олдскульный" SQLAlchemy затащили поддержку всяких современных фич языка. Будет интересно попробовать это все.
Статья про изменения в 2.0 https://docs.sqlalchemy.org/en/20/changelog/whatsnew_20.html
QuickStart, в котором показан новый подход к объявлению моделей https://docs.sqlalchemy.org/en/20/orm/quickstart.html
- Полная поддержка типов: ORM-модели теперь можно делать полностью типизированные, результаты запросов тоже типизированы
- Теперь ORM-модели можно объявлять как MappedAsDataclass и в этом случае на выходе получатся полноценные датаклассы
- Для массовых добавлений/изменений вместо bulk_* методов теперь можно использовать insert-ы и update-ы, которые стали достаточно умными, чтобы делать это одним запросом и поддерживать .returning()
- C-расширения переписали на Cython и обещают повышение их производительности
- Поддержка нового psycopg3 (aka "просто psycopg")
Резюмируя - очень здорово, что в довольно "олдскульный" SQLAlchemy затащили поддержку всяких современных фич языка. Будет интересно попробовать это все.
Статья про изменения в 2.0 https://docs.sqlalchemy.org/en/20/changelog/whatsnew_20.html
QuickStart, в котором показан новый подход к объявлению моделей https://docs.sqlalchemy.org/en/20/orm/quickstart.html
Forwarded from Хитрый Питон
YAML
в последние годы набрал огромную популярность, но наверное самая большая проблема с ним в том, что он выглядит просто, но на самом деле формат очень замороченный. Спецификация состоит из 10-и глав https://yaml.org/spec/1.2.2/. Честно признаюсь - я не осилил прочитать ее полностью, думаю, как и большинство людей, активно использующих yaml
.И вот тут мы подходим к теме сегодняшней статьи. Из-за того, что формат сложный, но с ним пытаются работать как с простым, есть много неочевидных способов поломать
yaml-документ. Например, ключи словаря в `yaml
` могут быть любого типа, не только строками. Если это совместить с тем, что yaml
считает, что on
— это True
, а off
— это False
, то вот этот пример из Quickstart-а Github Actions:
on: [push]
будет прочитан как:
True: ['push']
Интересно, в Github Actions свой, пропатченый парсер или они
on
и True
в ключах считают одним и тем же?В общем вот хорошая статья, в которой разбирается этот и многие другие неочевидные ловушки формата. Очень рекомендую всем, кто сталкивается с необходимостью писать/править YAML https://ruudvanasseldonk.com/2023/01/11/the-yaml-document-from-hell
Ruudvanasseldonk
The yaml document from hell
As a data format, yaml is extremely complicated and it has many footguns. In this post I explain some of those pitfalls by means of an example, and I suggest a few simpler and safer yaml alternatives.
Forwarded from Хитрый Питон
Кстати, в эту пятницу в 14:00 МСК будет новый стрим python-подкаста. В этот раз мы пробуем новый формат, вместе с Ильей Лебедевым обсудим, что интересного произошло в python-экосистеме за месяц. В темах:
- что интересного происходит в разработке веб-фреймворков
- обсудим выход SQLAlchemy 2.0
- свежие PEP и особенно возможность собирать python без GIL (и другие новые pep-ы)
и другие новости, связанные с python. Приходите на стрим на ютуб и задавайте вопросы в комментариях! https://www.youtube.com/live/wZ8PMWtRCe4?feature=share
- что интересного происходит в разработке веб-фреймворков
- обсудим выход SQLAlchemy 2.0
- свежие PEP и особенно возможность собирать python без GIL (и другие новые pep-ы)
и другие новости, связанные с python. Приходите на стрим на ютуб и задавайте вопросы в комментариях! https://www.youtube.com/live/wZ8PMWtRCe4?feature=share
YouTube
Выход SQLAlchemy 2.0 / сборка Python без GIL / топ Python библиотек 2022 и другие новости Python
0:00 - интро
1:03 - фреймворк Robin c Rust-рантаймом и его связь с искусством
6:31 - PEP 703 или Python без GIL
10:43 - запуск SQLAlchemy 2.0 или алхимия для дедов
13:48 - ответ на вопрос, перспективно ли учить FastAPI или углубляться в Django
14:00 - ответ…
1:03 - фреймворк Robin c Rust-рантаймом и его связь с искусством
6:31 - PEP 703 или Python без GIL
10:43 - запуск SQLAlchemy 2.0 или алхимия для дедов
13:48 - ответ на вопрос, перспективно ли учить FastAPI или углубляться в Django
14:00 - ответ…
Forwarded from Хитрый Питон
Вышел MyPy 1.0.0, из интересных изменений:
- На 40% быстрее, я очень рад, потому что на более-менее большой кодовой базе он раньше тормозил как не в себя
- Добавили сообщения о undefined variables, использовании переменной до ее объявления. Кажется, тот же flake8 нормально это отлавливает, но все равно выглядит небесполезно
- Добавили поддержку типа Self (есть в 3.11, для более ранних версий надо использовать typing_extensions)
- Реализовали поддержку ParamSpec, но я если честно еще ни разу ParamSpec не использовал в реальном коде, но если интересно, это PEP 612
И еще из интересного, они на конец перешли на semver и теперь будет проще по номерам версий понимать, будут ли подводные камни при обновлении 🙂
Подробнее вот тут https://mypy-lang.blogspot.com/2023/02/mypy-10-released.html
- На 40% быстрее, я очень рад, потому что на более-менее большой кодовой базе он раньше тормозил как не в себя
- Добавили сообщения о undefined variables, использовании переменной до ее объявления. Кажется, тот же flake8 нормально это отлавливает, но все равно выглядит небесполезно
- Добавили поддержку типа Self (есть в 3.11, для более ранних версий надо использовать typing_extensions)
- Реализовали поддержку ParamSpec, но я если честно еще ни разу ParamSpec не использовал в реальном коде, но если интересно, это PEP 612
И еще из интересного, они на конец перешли на semver и теперь будет проще по номерам версий понимать, будут ли подводные камни при обновлении 🙂
Подробнее вот тут https://mypy-lang.blogspot.com/2023/02/mypy-10-released.html
Python Enhancement Proposals (PEPs)
PEP 612 – Parameter Specification Variables | peps.python.org
There currently are two ways to specify the type of a callable, the Callable[[int, str], bool] syntax defined in PEP 484, and callback protocols from PEP 544. Neither of these support forwarding the parameter types of one callable over to another calla...
Hacking The Python For Loop | Hackaday
https://hackaday.com/2023/02/05/hacking-the-python-for-loop/
https://hackaday.com/2023/02/05/hacking-the-python-for-loop/
Hackaday
Hacking The Python For Loop
In the early days of C, you’d occasionally see someone — probably a former Pascal programmer — write something like this: #define BEGIN { #define END } This would usually initiate…
#SBJ
#linters in #PyCharm
#googling
#ChatGPT_answer:
PyCharm provides built-in support for several linters, including #Pylint, #Flake8, and #mypy. Here's how to use each of these linters:
Pylint: Pylint is a popular linter for Python that checks for programming errors, code style, and code complexity. To use Pylint in PyCharm, follow these steps:
Go to Settings/Preferences > Editor > Inspections.
Search for "Pylint" and check the box to enable it.
Click "Configure" to customize the Pylint settings, such as the severity of the issues and the Pylint executable path.
Flake8: Flake8 is another popular linter that combines several other linters, including Pylint, PyFlakes, and McCabe. To use Flake8 in PyCharm, follow these steps:
Go to Settings/Preferences > Editor > Inspections.
Search for "Flake8" and check the box to enable it.
Click "Configure" to customize the Flake8 settings, such as the severity of the issues and the Flake8 executable path.
mypy: mypy is a static type checker for Python that can help catch type-related bugs before runtime. To use mypy in PyCharm, follow these steps:
Go to Settings/Preferences > Editor > Inspections.
Search for "mypy" and check the box to enable it.
Click "Configure" to customize the mypy settings, such as the severity of the issues and the mypy executable path.
In general, it's a good idea to use multiple linters to catch as many issues as possible. You can enable and configure multiple linters in PyCharm and see the results in the editor and the #inspection #tool window.
#linters in #PyCharm
#googling
#ChatGPT_answer:
PyCharm provides built-in support for several linters, including #Pylint, #Flake8, and #mypy. Here's how to use each of these linters:
Pylint: Pylint is a popular linter for Python that checks for programming errors, code style, and code complexity. To use Pylint in PyCharm, follow these steps:
Go to Settings/Preferences > Editor > Inspections.
Search for "Pylint" and check the box to enable it.
Click "Configure" to customize the Pylint settings, such as the severity of the issues and the Pylint executable path.
Flake8: Flake8 is another popular linter that combines several other linters, including Pylint, PyFlakes, and McCabe. To use Flake8 in PyCharm, follow these steps:
Go to Settings/Preferences > Editor > Inspections.
Search for "Flake8" and check the box to enable it.
Click "Configure" to customize the Flake8 settings, such as the severity of the issues and the Flake8 executable path.
mypy: mypy is a static type checker for Python that can help catch type-related bugs before runtime. To use mypy in PyCharm, follow these steps:
Go to Settings/Preferences > Editor > Inspections.
Search for "mypy" and check the box to enable it.
Click "Configure" to customize the mypy settings, such as the severity of the issues and the mypy executable path.
In general, it's a good idea to use multiple linters to catch as many issues as possible. You can enable and configure multiple linters in PyCharm and see the results in the editor and the #inspection #tool window.
Каким же образом можно свободно передавать, в некоторых случаях даже хранить данные, не переживая о потенциальных утечках? Именно здесь в игру вступает анонимизация данных путём маскирования.
Проще говоря, анонимизация данных – это процесс перестановки данных таким образом, после которого будет невозможно понять, кому принадлежат данные. В зависимости от цели может так же возникнуть потребность в том, чтобы сохранить смысл и такие свойства как однородность, целостность, взаимозависимость и вариативность исходных данных. Чтобы решить возможную проблему, необходимо понять, как и какие данные необходимо маскировать, а какие нужно сохранить.
Anonympy – простая, но богатая своим функционалом библиотека, обладающая набором инструментов и функций для анонимизации и маскировки данных. На текущий момент проходит бета-тестирование функционала по анонимизации изображений и цензурированию текста в PDF-документах, но об этом в другой раз.
pip install anonympy
- Читать дальше
- Зеркало
- Anonympy
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Python и 1000 уязвимостей
Конвертируем строку в словарь
Использование метода
Еще одна функция, которую применяют для преобразования строк в словари, —
Использование метода
ast.literal.eval()
Сегодня продолжим конвертировать строку в словарь. Смотреть прошлый гайд: Использование метода json.loads()Еще одна функция, которую применяют для преобразования строк в словари, —
ast.literal.eval()
. Чтобы ее использовать, нужно импортировать библиотеку ast
.Forwarded from Python и 1000 уязвимостей
🐼 По маршруту SQLite - Pandas: 7 основных операций
💬 Когда я занимался разработкой iOS, еще не было устоявшихся решений для работы с базами данных мобильных приложений, так что мне пришлось реализовывать свою собственную БД.
Выбор пал на SQLite, упрощенный механизм для управления реляционными базами данных.
Важно отметить, что pandas, ведущая библиотека для обработки данных, предоставляет соответствующие функциональности для взаимодействия с разными базами данных, в том числе и SQLite. В данной статье мы рассмотрим ряд основных операций.
Читать статью
💬 Когда я занимался разработкой iOS, еще не было устоявшихся решений для работы с базами данных мобильных приложений, так что мне пришлось реализовывать свою собственную БД.
Выбор пал на SQLite, упрощенный механизм для управления реляционными базами данных.
Важно отметить, что pandas, ведущая библиотека для обработки данных, предоставляет соответствующие функциональности для взаимодействия с разными базами данных, в том числе и SQLite. В данной статье мы рассмотрим ряд основных операций.
Читать статью
Forwarded from Python и 1000 уязвимостей
Конвертируем строку в словарь
Использование метода
Мы можем преобразовать строку в словарь с помощью функции
Использование метода
json.loads()
Программистам постоянно приходится преобразовывать различные типы данных, и очень важно делать это правильно.Мы можем преобразовать строку в словарь с помощью функции
json.loads()
. Чтобы ее использовать, нужно импортировать модуль json
.Forwarded from Инжиниринг Данных (Dmitry)
Наконец-то я закончил замечательную книгу, наверно лучшую в своем роде - Python Crash Course (3rd edition).
Книга состоит из 2х частей:
1) теория + упражнения про обычные питоновские вещи, но все объяснено очень понятным языком (наверно за это очень любят эту книгу). Я давным-давно закончил часть1.
2) а вот 2ю часть все откладывалась. Это набор разных проектов на питоне.
Я загрузил свой код к себе в репо. Так же там есть популярные cheetsheets от автора.
Проекты:
- сделать игру на PyGame, используется много файлов и классов
- визуализация данных с помощью Matplotlib, Plotly, генерация данных
- работа с API на примере GitHub, HackerRank
- достаточно большой проект на Django, в котором будет много HTML.
PyGame и Django мне вряд ли понадобятся, но моя задача просто чаще использовать питон, и эти проекты отлично подошли. Даже промелькнула мысль сделать английскую версию datalearn на django, но быстро ее отбросил.
Следующая книгу по Python - Fluent Python. В ней много базовых вещей, но это как вода, которая должна заполнить пустоты в стакане с песком:)
Что вам еще по питону нравится?
Книга состоит из 2х частей:
1) теория + упражнения про обычные питоновские вещи, но все объяснено очень понятным языком (наверно за это очень любят эту книгу). Я давным-давно закончил часть1.
2) а вот 2ю часть все откладывалась. Это набор разных проектов на питоне.
Я загрузил свой код к себе в репо. Так же там есть популярные cheetsheets от автора.
Проекты:
- сделать игру на PyGame, используется много файлов и классов
- визуализация данных с помощью Matplotlib, Plotly, генерация данных
- работа с API на примере GitHub, HackerRank
- достаточно большой проект на Django, в котором будет много HTML.
PyGame и Django мне вряд ли понадобятся, но моя задача просто чаще использовать питон, и эти проекты отлично подошли. Даже промелькнула мысль сделать английскую версию datalearn на django, но быстро ее отбросил.
Следующая книгу по Python - Fluent Python. В ней много базовых вещей, но это как вода, которая должна заполнить пустоты в стакане с песком:)
Что вам еще по питону нравится?
O’Reilly Online Learning
Python Crash Course, 3rd Edition
Python Crash Course is the world's best-selling guide to the Python guide programming language, with over 1,500,000 copies sold to date! This fast-paced, thorough introduction to programming with Python will … - Selection from Python Crash Course, 3rd Edition…