
В данной статье рассмотрены некоторые методы и инструменты библиотек python для анализа данных. Используем три самые популярные библиотеки: Pandas, Numpy, Seaborn
Высокоуровневый язык программирования
В данной статье рассмотрены некоторые методы и инструменты библиотек python для анализа данных. Используем три самые популярные библиотеки: Pandas, Numpy, Seaborn
Привет, Хабр! Вот когда каждый грамм действительно имеет значение: если вам нужно спрогнозировать вес птицы перед продажей, чтобы экономить на кормах и оптимизировать производство. Меня зовут Михаил Чирков, я data scientist в R-Style Softlab и сегодня хочу поделиться с вами кейсом прогнозирования с помощью XGBoost, этот проект мы делали в рамках внедрения BI-системы для птицефабрики.
Привет, Хабр, меня зовут Юрий, я уже год использую хайповый IoC‑контейнер dishka в python-проекте и хочу немного поделиться опытом эксплуатации.
Мой проект — движок для городской ночной поисковой игры «Схватка» («Энкаунтер» или «Дозоры»). Проект полностью open source.
Речь пойдет о новом механизме хранения и манипулирования данными в SimpleUI, который так тесно связан с UI-механизмами платформы что по сути является частью UI/UX. Это многогранный артефакт – это и «визуальная форма данных» (списки, поля ввода, поиск) и резидентное в памяти хранение и примитивное локальное хранение. В целом можно сказать, что «вы наполняете датасет данными, а платформа делает все остальное». Причем в результате выигрыш во всем – в скорости разработки, в прозрачности решения и производительности на любых объемах данных. Кроме того, это удобная работа со ссылочными объектами, что делаем Симпл более удобным для работы с данными внешних систем, а датасеты в свою очередь становятся основным механизмом хранения данных внешних систем (даже для онлайн-решений).
На Московской бирже торгуется более 2500 облигаций, но большая часть из них неликвидна - в стакане почти нет предложений и сделок совершается крайне мало. Это затрудняет покупку и продажу таких бумаг. При этом известные мне публичные сервисы не суммируют объемы торгов за период, поэтому сложно быстро найти облигации с высокой ликвидностью.
Пять лет назад написал Node.js-скрипт, затем адаптировал его для Google Таблиц, а теперь разрабатываю Python версию. При помощи сообщества на GitHub эта Python версия идёт к созданию полноценной библиотеки с расширенными возможностями: автоматический поиск ликвидных облигаций, расчет денежных потоков, сбор новостей по эмитентам и вычисление оптимального объема покупки. Все это направлено на помощь простым инвесторам, вроде нас с вами, чтобы оперативно находить выгодные инвестиционные инструменты и принимать решения на основе актуальной информации.
Проект полностью open source.
Бэктестинг — ключевой процесс в алгоритмической торговле. Он позволяет проверить стратегию на исторических данных, прежде чем запускать её в реальной торговле. Однако, чем больше данных и сложнее логика стратегии, тем дольше времени занимают вычисления. Особенно если стратегия анализирует тиковые данные и требуется протестировать множество комбинаций гиперпараметров стратегии, время вычислений может расти экспоненциально.
В этой статье мы разберем, как реализовать бэктестинг на чистом Python, посмотрим сколько времени могут занимать вычисления, а также попробуем найти разные способы оптимизации.
Python, как известно — это интерпретируемый язык, что означает, что код выполняется построчно во время исполнения программы, а не компилируется в машинный код заранее, как это происходит, например, в C или C++. Это делает разработку быстрее и удобнее, так как можно сразу видеть результаты выполнения кода и легко отлаживать программы. Но этот же факт, в свою очередь, приводит к тому, что Python заметно уступает в скорости более низкоуровневым языкам. К тому же Python использует динамическую типизацию, что требует дополнительных проверок и снижает производительность и если данных очень много, это может приводить к значительным сложностям, связанным с увеличением времени вычислений.
Как же использовать ту легкость и скорость разработки Python и при этом сохранить адекватное время вычислений на больших объемах данных? В этой статье мы увидим, насколько перенос вычислений на GPU может увеличить производительность вычислений.
Всем привет! На связи дата-сайентисты стрима разработки моделей для корпоративного сегмента ВТБ — Андрей Бояренков, Иван Кондраков и Денис Дурасов.
Как уже писали ранее в другой статье, внедрение процесса AutoML позволило нам во многом автоматизировать рутину и разработки, и применения моделей. Соответственно, у нас появилось больше времени для RnD-задач, которые могли бы быть полезны нашим заказчикам, чтобы охватить моделями новые процессы, а также провести исследования новых алгоритмов.
Поэтому мы составили мэппинг возможных моделей на элементы работы Банка с клиентами малого и среднего бизнеса в части предотвращения просрочек по кредитной задолженности, а также по взысканию задолженности. Из данной схемы стало понятно, что есть необходимость разработать модели для процессов по мониторингу заёмщиков Банка — Precollection-модели.
Под катом расскажем, как мы их разрабатывали и каких результатов удалось с ними добиться.
Автоматический сбор данных (парсинг, или web scraping) стал неотъемлемой практикой для разработчиков, аналитиков и автоматизаторов. С его помощью получают массовую информацию с сайтов – от цен конкурентов и отзывов до контента соцсетей. Для этого разработано множество “парсеров” – библиотек, фреймворков и облачных сервисов, которые позволяют извлекать веб-данные программно. Одни решения требуются для быстрого парсинга статичных страниц, другие – для обхода сложной JavaScript-навигации, третьи – для получения данных через API.
В этой статье я рассмотрю топ инструментов для парсинга – как открытых (Open Source) библиотек, так и коммерческих SaaS/API-сервисов – и сравню их по ключевым метрикам.
Я знаю многих программистов и руководителей в IT компаниях, которые недолюбливают математиков и в частности считают их далёкими от жизни идиотами из-за их утверждений в духе "нельзя отсортировать последовательность быстрее, чем за nlogn" -- ведь это очевидным образом неверно, есть же сортировка подсчетом и radix sort. Нюанс в том, что описанное выше -- это распространённая некорректная трактовка одной из ключевых теорем об алгоритмах сортировок, корректное утверждение выглядит так: "не существует алгоритма, который бы гарантированно находил перестановку n элементов, приводящую к возрастающему порядку, быстрее чем за nlogn используя только операции попарного сравнения". В этом утверждении больше слов, оно более сложно в плане когнитивного восприятия, ключевой момент обозначил жирным шрифтом, чувствуете разницу?
В статье хочу рассказать об этой теореме и ещё о двух, на которые я наткнулся когда вел занятия по информатике в 9-11 классах будучи студентом старших курсов. Эти теоремы для меня были удивительным открытием, радовался вне себя когда вывел сам одну из них - её я не встречал ни в одном учебнике по информатике. В последствии все три теоремы были найдены в недрах Кнута, но чёрт побери, их поиск был сложнее, чем вывод!
Если я ещё не убедил Вас прочитать статью, то вот моя последняя попытка: в статье объясню почему пузырёк -- это бесполезная фигня, но внезапно практически также работающая сортировка вставками -- это супер важная сортировка, являющаяся частью std::sort в MSVC, GCC и Clang. Расскажу, каким интересным свойством оптимальности обладает сортировка выбором, являющаяся в теории такой же неэффективной как пузырёк.
Привет Хабр ! Это моя первая статья на тему процедурной генерации. Здесь я рассмотрю конкретную задачу по генерации, её решение и опишу ключевые использованные принципы. Пишу эту статью для того, чтобы поделиться идеями и опытом, которых мне не хватало, когда я взялся за дело две недели назад. Я не буду делать полный разбор проекта, а лишь опишу и визуализирую принцип.
Как отправить робота на автономное патрулирование и научить его «видеть»? Разбираем реальный кейс создания роботизированной системы мониторинга на базе отечественной платформы: выбор оборудования, интеграция ИИ и примеры кода. Делимся опытом, как научить робота собирать данные, обходить препятствия и почему отказались от модной робособаки.
Привет, Хабр!
Сегодня рассмотрим тему обработки временных рядов с помощью Polars.
Начну с того, что в Pandas для агрегации временных рядов принято использовать метод resample(). Он удобен и привычен, но имеет свои ограничения по производительности и гибкости. Polars, в свою очередь, имеет метод groupby_dynamic(), который позволяет группировать данные по динамическим временным интервалам.
🔪 Карусель триальных токенов под ребро облачному LLM провайдеру
Облачный LLM провайдер Cohere
предоставляет бесплатно 20 запросов в минуту без проверки кредитной карты. Я просто не смог отказаться от задумки сделать веселую карусель.
Привет. Хотел подарить племянникам раскраски, но обычные уже не идут, хочется, чтобы раскраска была одновременно и с персонажами игры и мультиков и всего-всего. Нужно делать свои, нашел пару сервисов, которые делают эскизы из фото, но они либо клеят вотермарки на результат, либо делают не то, что нужно мне, поэтому засел за созданием своего решения.
Всем привет! Недавно я закончил один из этапов собственного проекта, в котором я провел сравнительный анализ 3 одних из самых известных нейросетей для семантической сегментации: U-Net, LinkNet, PSPNet. Теперь я хочу поделиться со всеми, чтобы в случае, если кто-то захочет сделать что-то подобное или ему просто понадобится, то он не искал весь интернет, как я, а легко и просто все нашел. В конце главы каждый нейросети я оставил ссылки на оригинальные статьи для желающих самостоятельно все изучить (на английском). Ссылка на мой GitHub с полноценной версией всех нейросетей и main файла в конце статьи.
Я расскажу кратко о подготовке входных данных перед тем, как подавать их в нейросеть, объясню самые важные детали каждой модели по отдельности, а также покажу результаты сравнения. Использовал я библиотеку Tensorflow, а обучение проводил в среде Google Colab.
weakref
языка Python и, возможно, даже не слышали о нём. Притом, что ваш код может быть написан и почти без применения слабых ссылок, этот модуль фундаментально важен для внутреннего устройства многих библиотек, фреймворков и самого языка Python. Так что в этой статье мы исследуем, что он собой представляет, чем может быть полезен, и каким образом этот модуль вам было бы удобно встраивать в ваш собственный код.weakref
и слабые ссылки, давайте сначала немного подробнее выясним, как в Python происходит сборка мусора.Помню в детстве, перед началом летних каникул, казалось, что лето никогда не кончится - 3 месяца где-то рядом с бесконечностью. А сейчас... Оказывается мы уже больше года разрабатываем RMON, первый коммит в Github был 15 марта 2024 года. Вжух и один год жизни пролетел. Ладно, хватит разговаривать на скуфском - это было маленькое вступление для подведения небольшого итога года работы. Вперед!
В рамках научного и исследовательского интереса решил поэкспериментировать с распознаванием сложных типов капчи, ну как поэкспериментировать - скорее проверить работоспособность и умение электронного коллеги писать за меня код. Да, там было куча - соблюдайте этические нормы, бла бла бла… Но простое - чувак, я это делаю исключительно в рамках исследования - все решили.
В статье описан алгоритм обсчета когортного анализа по датасету транзакций платежей пользователей с реализацией на Python.
Привет, Хабр! Меня зовут Данила Федюкин и я тимлид в X5 Digital. Руковожу командой, которая занимается рекомендациями и метчингом.
Персонализация играет ключевую роль в развитии бизнеса. На первых этапах, когда у компании ещё нет собственных решений для адаптации под клиентов, часто приходится обращаться к внешним подрядчикам. Именно так поступили и мы. Но работа с подрядчиком для нас оказалась дорогой, болезненной и долгой. Про наш путь к собственной разработке расскажу в статье.