Pull to refresh
0
@aksmread⁠-⁠only

User

Send message

Оптимизации работы Jupyter notebook при помощи параллельных вычислений (Библиотека Joblib)

Level of difficultyMedium
Reading time9 min
Views9.4K

Привет, Хабр!

Меня зовут Серов Александр, я участник профессионального сообщества NTA.

Параллелизм играет важную роль в задачах Data Science, так как может значительно ускорить вычисления и обработку больших объемов данных. В посте расскажу  о возможностях применения параллельных вычислений в интерактивной среде Jupyter notebook языка Python.

Узнать больше
Total votes 4: ↑4 and ↓0+4
Comments10

Пишем логи Python при помощи библиотеки Structlog

Level of difficultyEasy
Reading time8 min
Views5.7K

В этом посте мы расскажем о том, как structlog может помочь вам писать логи, которые не только помогают в повседневной работе, но и реализуют лучшие практики для согласованного логирования во всём проекте.

Также мы рассмотрим распространённые сложности логирования и узнаем, как их позволяет решать structlog.

Читать далее
Total votes 32: ↑31 and ↓1+30
Comments2

Как сделать Telegram-бота для проверки аптайма своего сервиса на Python (ч.3 получение графиков через телеграм)

Level of difficultyEasy
Reading time6 min
Views5K

Всем привет! В предыдущих статьях (часть 1 и часть 2) я описывал мой опыт в части "наколенной" разработки системы алертинга и проверки состояния для сервиса, работающего на удаленном сервере, коммуникации с которым происходят через телеграм бота. Такой способ коммуникации удобен, потому что телефон с телегой всегда под рукой, а ноутбук иногда даже доставать лень, когда все можно быстро проверить в телеге.

В этой части я опишу процесс регулярного сбора данных и формирования графиков о функционировании сервиса, которые также можно получать через бота.

Под кат
Total votes 4: ↑4 and ↓0+4
Comments3

Автопостинг ВК (VK) на python

Level of difficultyEasy
Reading time9 min
Views8.3K

У меня есть несколько групп в ВК, в которые нужно периодически публиковать посты. В целом мое желание можно описать фразой «А когда мне это делать, если я все время не хочу». Мотивация в моем случае это лень. Я не являюсь разработчиком, но решил набросать скрипт, который будет публиковать посты.

Читать далее
Total votes 11: ↑7 and ↓4+3
Comments2

Секреты управления подписками на App Store от Apple

Reading time7 min
Views3.5K
Подписочная модель впервые была внедрена на App Store в 2016 году и с тех пор остается одним из приоритетных аспектов сервиса, на совершенствование которого компания не жалеет ресурсов. Эта схема, в отличие от IAP, нацелена на долгосрочное удержание пользователей и стабильные начисления, что, вероятно, выгодно для разработчика и определенно выгодно для маркета — сейчас доля подписок составляет около 18% от общей прибыли корпорации. Подписки можно по праву назвать самой быстрорастущей бизнес-моделью на App Store.


Apple удерживает от 15% до 30% комиссии из выплат по подпискам, а взамен предлагает разработчикам все больше инструментов для того, чтобы сделать оформление подписки удобным, безопасным, стандартизированным процессом, который точно не оттолкнет пользователя. Проблема не надуманная: как прямо говорят специалисты Apple, эффективность подписочной модели часто страдает из-за излишней запутанности или трудоемкости оформления. На прошлой конференции WWDC компания посвятила этой теме целый доклад, подробно рассказав, как донести до пользователей ценность своего предложения, обеспечить им положительный опыт и повысить конверсию. Основные положения с примерами и иллюстрациями вы найдете под катом.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments1

Критерий Манна-Уитни — самый главный враг A/B-тестов

Reading time17 min
Views32K

Всем привет! Меня зовут Дима Лунин, я аналитик в компании Авито. В этой статье я расскажу про критерий Манна-Уитни и проблемы при его использовании.

Если вы анализировали A/B-тест, где вас интересовал прирост или падение какой-то метрики, то наверняка использовали критерий Манна-Уитни. Я хочу рассказать про подводные камни этого критерия, и почему мы в компании его не используем. А в конце вы поймёте, откуда такой холиварный заголовок) 

Читать далее
Total votes 26: ↑25 and ↓1+24
Comments18

Тестирование скриншотами

Reading time5 min
Views14K

Здравствуйте! Сегодня хочу рассказать о нашем опыте тестирования скриншотами с использованием python, selenium, и Pillow.

Зачем? У нас был довольно большой (~1000) набор тестов на стеке python, pytest, selenium, которые отлично проверяли, что кнопки кликаются, а статистика отправляется (с использованием browserup proxy), но пропускали баги типа таких:  

Читать далее
Total votes 14: ↑13 and ↓1+12
Comments0

Функции XPath для динамических XPath в Selenium

Reading time6 min
Views47K

В данной статье рассматриваются примеры использования функций XPath для идентификации элементов.

Автоматизация взаимодействия с любым сайтом начинается с корректной идентификации объекта, над которым будет выполняться какая-либо операция. Как нам известно, легче всего идентифицировать элемент по таким атрибутам, как ID, Name, Link, Class, или любому другому уникальному атрибуту, доступному в теге, в котором находится элемент.

Но правильно идентифицировать объект можно только в том случае, если такие атрибуты присутствуют и (или) являются уникальными.

Читать далее
Total votes 10: ↑7 and ↓3+4
Comments2

Бесплатный удобный ETL инструмент с открытым кодом на основе Python — фантастика или нет?

Reading time13 min
Views17K

Сегодня я хочу рассказать об open-source инструменте, который позволяет извлекать и очищать данные для широкого спектра задач. В этом посте речь пойдет о ViXtract, нашей собственной сборке открытых технологий для работы с данными. Под катом — рассуждения о том, каким должен быть идеальный ETL, рассказ о том, почему его лучше делать на Python (и почему это совсем не сложно), мысли о скриптовом и графическом подходе.

Читать далее
Total votes 17: ↑16 and ↓1+15
Comments17

Влияние ambient-музыки на процесс написания кода

Reading time7 min
Views57K
В данной статье я хотел бы поговорить о той музыке, под которую мы пишем код. О музыке «для программистов». А точнее, про такой специфический жанр музыки, как эмбиент.



Человек работающий и музыка


Влияние музыки на все живое вообще и на человека в частности на данный момент изучено достаточно хорошо. Давно известно, что классические произведения помогают людям успокоиться и снять стресс, а энергичная музыка разных жанров может улучшить результаты вашей спортивной тренировки.

Существует большое количество научных работ на эту тему, особенно в сфере медицины и психологии (применение музыки в лечении больных, влияние музыки на различные органы человека и т.п.). Конечно, ко многим исследованиям стоит относиться скептически, так как есть опасность уйти в лженауку, но и авторитетных трудов на эту тему более чем достаточно.

На том же Хабре есть масса отличных статей о том, как музыка влияет на рабочий климат офиса, на концентрацию работника и т.п. Но данный материал немного о другом.
Читать дальше →
Total votes 38: ↑30 and ↓8+22
Comments133

Использование Python и Excel для обработки и анализа данных. Часть 2: библиотеки для работы с данными

Reading time10 min
Views330K
Первая часть статьи была опубликована тут.

Как читать и редактировать Excel файлы при помощи openpyxl


ПЕРЕВОД
Оригинал статьи — www.datacamp.com/community/tutorials/python-excel-tutorial
Автор — Karlijn Willems

Эта библиотека пригодится, если вы хотите читать и редактировать файлы .xlsx, xlsm, xltx и xltm.

Установите openpyxl using pip. Общие рекомендации по установке этой библиотеки — сделать это в виртуальной среде Python без системных библиотек. Вы можете использовать виртуальную среду для создания изолированных сред Python: она создает папку, содержащую все необходимые файлы, для использования библиотек, которые потребуются для Python.

Перейдите в директорию, в которой находится ваш проект, и повторно активируйте виртуальную среду venv. Затем перейдите к установке openpyxl с помощью pip, чтобы убедиться, что вы можете читать и записывать с ним файлы:
Читать дальше →
Total votes 17: ↑16 and ↓1+15
Comments2

Классификация текста с помощью нейронной сети на Java

Reading time12 min
Views78K
– Наша Лена уходит в декрет, – сообщил начальник, – поэтому нам надо искать замену на время ее отсутствия. Часть задач мы распределим, а вот как быть с задачей перенаправления обращений пользователей?

Лена – это наш сотрудник технической поддержки. Одна из ее обязанностей – распределение поступающих на электронную почту обращений между специалистами. Она анализирует обращение и определяет ряд характеристик. Например, «Тип обращения»: ошибка системы, пользователю просто нужна консультация, пользователь хочет какую-то новую функциональность. Определяет «Функциональный модуль системы»: модуль бухгалтерии, модуль паспортизации оборудования и т.д. Проставив все эти характеристики, она перенаправляет обращение соответствующему специалисту.

– Давай я напишу программу, которая это будет делать автоматически! – ответил я.

На этом увлекательный роман заканчиваем и переходим к технической части.

Читать дальше →
Total votes 33: ↑31 and ↓2+29
Comments28

Простая математика для решения непростых задач

Reading time3 min
Views19K
image

При рассмотрении статьи, посвященной системе приоритезации обращений в техническую службу АО «Инфовотч», может возникнуть логичный вопрос: каким образом проводился расчет весовых коэффициентов? «Уложить» алгоритм расчета в комментарий к статье с учетом его объема будет, мягко говоря, трудновато. Поэтому, предвидя подобные вопросы, мы решили дополнить предыдущую статью поэтапным рассмотрением алгоритмов расчета данных весовых коэффициентов.
Читать дальше →
Total votes 20: ↑16 and ↓4+12
Comments14

Своя CRM система за 3 часа в Гугл-таблицах

Reading time2 min
Views83K
В этом посте хочу поделиться опытом, как с помощью гуглдока можно создать CRM-систему, которая полностью будет закрывать потребности небольшой или средней студии ИТ-разработки.

Я сразу отказался от всех полуготовых решений, типа amoCRM (удобная, но нам рановато пока), ShugarCRM (кривая и медленная, вызывает невроз) и др., потому что я люблю, чтобы софт подстраивался под мой бизнес, а не бизнес-процессы подстраивались под софт (да и на первых порах нужно что-то по проще с низкой стоимостью внедрения). Так что — только гугл-док, только хардкор!


Читать дальше →
Total votes 27: ↑19 and ↓8+11
Comments28

Отзывчивые столбчатые диаграммы с Bokeh, Flask и Python 3

Reading time8 min
Views20K

От переводчика


Недавно наткнулся в python digest на туториал по Flask+Bokeh. Туториал ориентирован на новичков, не требуется даже знать синтаксис Python и HTML. Примеры работают под Ubuntu 16.04, на Windows немного отличается работа с виртуальными окружениями.


image

Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments8

Pygest #2. Релизы, статьи, интересные проекты из мира Python [15 января 2017 — 29 января 2017]

Reading time2 min
Views11K
image

Всем привет!

Второй выпуск дайджеста на Хабрахабр о новостях из мира Python. Присылайте свои актуальные материалы, а также любые замечания и предложения, которые будут добавлены в ближайший дайджест.

А теперь к делу!
Перейти к дайджесту
Total votes 34: ↑34 and ↓0+34
Comments9

Синтаксический анализ текстов с помощью SyntaxNet

Reading time4 min
Views38K
Для одной из задач мне понадобился синтаксический анализатор русскоязычных текстов. Что это такое. Например, у нас есть предложение «Мама мыла раму». Нам нужно получить связи слов в этом предложении в виде дерева:

image

Из этого дерева понятно, что связаны слова «мама» и «мыла», а также «мыла» и «раму», а слова «мама» и «раму» напрямую не связаны.

Статья будет полезна тем, кому понадобился синтаксический анализатор, но не понятно, с чего начать.

Я занимался этой темой несколько месяцев назад, и на тот момент нашел не много информации по поводу того, где бы взять готовый и желательно свободный анализатор.
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments22

Генерация фиктивных данных с Mimesis: Часть I

Reading time7 min
Views36K
image

Mimesis — это библиотека для языка программирования Python, которая помогает генерировать фиктивные данные для различных целей. Библиотека написана с использованием средств, включенных в стандартную библиотеку языка Python, потому не имеет никаких сторонних зависимостей. На данный момент библиотека поддерживает 30 языковых стандартов (в числе которых и русский) и более 20 классов-провайдеров, предоставляющих разного рода данные.


Возможность генерировать фиктивные, но в то же время валидные данные бывает очень полезна при разработке приложений, которые подразумевают работу с базой данных. Ручное заполнение базы данных представляется довольно затратным по времени и трудоемким процессом, который выполняется как минимум в 3 этапа — это:


  1. Сбор необходимой информации.
  2. Постобработка собранных данных.
  3. Программирования генераторов данных.

Эта непростая задача по-настоящему усложняется в тот момент, когда требуется сгенерировать не 10-15 пользователей, а 100-150 тысяч пользователей (или иного рода данные). В этой и двух последующих статьях мы постараемся обратить ваше внимание на инструмент, который в разы упрощает процесс генерации тестовых данных, начальной загрузки базы данных и тестирования в целом.

Читать дальше →
Total votes 46: ↑45 and ↓1+44
Comments40

Нейронные сети на JS. Создавая сеть с нуля

Reading time8 min
Views90K

КПДВ про нейронные сети


Нейронные сети сейчас в тренде. Каждый день мы читаем про то, как они учатся писать комментарии в интернете, торговаться на рынках, обрабатывать фотографии. Список бесконечен. Когда я впервые посмотрел на масштаб кода, который приводит это в движение, я был напуган и хотел больше не видеть эти исходники.


Но врожденные любознательность и энтузиазм довели меня до того, что я стал одним из разработчиков Synaptic — проекта фреймворка для построения нейронных сетей на JS с 3к+ звезд на GitHub. Сейчас мы с автором фреймворка занимаемся созданием Synaptic 2.0 с ускорением на GPU и WebWorker-ах и с поддержкой почти всех основных фич любого приличного NN-фреймворка.


В итоге оказалось, что нейронные сети — это несложно, они работают на достаточно простых принципах, которые несложно понять и воспроизвести. Самая трудная задача — это обучение, но для этого почти всегда пользуются готовыми алгоритмами, а скопировать их не очень сложно.
Доказать это просто. Ниже в статье реализация нейронной сети с нуля без каких-либо библиотек.

Читать дальше →
Total votes 53: ↑51 and ↓2+49
Comments43

Усовершенствование системы видеонаблюдения с использованием OpenCV и Telegram bot

Reading time5 min
Views35K

С чего все начиналось


Все началось с того, что я захотел установить у себя «умную» систему видеонаблюдения на Raspberry.

Хочу отдельно отметить, что для этого воспользовался несколькими статьями на Хабре. Спасибо авторам за их посты. Они реально помогли.

В итоге установил на купленном Raspberry Pi3 USB-камеру Logitech, смонтировал Яндекс.Диск и с периодичностью в 30 секунд делал снимки, которые затем копировал в папку на Яндекс.Диске.
Поигравшись с дальнейшем архивированием файлов, монтированием из отдельных снимков видео, забросил новую «игрушку» на несколько месяцев.
Читать дальше →
Total votes 21: ↑17 and ↓4+13
Comments47
1

Information

Rating
Does not participate
Registered
Activity