Search
Write a publication
Pull to refresh
18
0
Олег @OlegUV

Аналитик

Send message

Работа с API на языке R, введение в пакет httr2

Reading time7 min
Views4.2K

Цель этой статьи - показать вам основы httr2

httr2 - переосмысленная реализация пакета httr, т.е. интерфейс для работы с HTTP запросами на языке R.

Из статьи вы узнаете, как создавать и отправлять HTTP-запросы и работать с полученными HTTP-ответами. httr2 разработан для точного сопоставления с базовым протоколом HTTP, который я объясню по мере продвижения. Для получения дополнительных сведений я также рекомендую ознакомиться со статьёй "An overview of HTTP" от MDN.

Читать далее

Оборачиваем API с помощью httr2

Reading time26 min
Views2K

Обычное использование httr2 — это создание обёртки над каким нибудь API и предоставление его в виде R пакета, в котором каждая конечная точка API (то есть URL-адрес с параметрами) становится функцией. Эта статья поможет разобраться, как начать с очень простого API, не требующего аутентификации, а затем постепенно приводимые примеры будут усложняться. 

Читать далее

Бесплатный курс «Язык R для интернет маркетинга»

Reading time3 min
Views5.1K

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

Курс не требует от вас наличия навыков программирования, и рассчитан на новичков.

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

Читать далее

Дата саентист и циклы-циклы-циклы…

Reading time14 min
Views6.7K


«How I Met Your Mother», season 6, ep. 7


Коля любит циклы. 
Толя любит циклы. 
Оля любит циклы. 
Все любят циклы. 

И Сережа тоже.

Один Мамба их не любит. И вот почему.


Если опустить философские рассуждения, что все на уровне процессора является циклом или goto, то можно выделить три причины:


  1. При работе с индексами цикла можно легко проглядеть и допустить ошибку. Но тут помощь приходят итераторы.
  2. Очень часто циклы вручную пишутся очень неэффективно с точки зрения манипуляций с памятью — сильная просадка по производительности. А у вложенных циклов еще и накладные на старт цикла.
  3. Нелинейная структура цикла (break, continue) не позволяют сделать хорошую оптимизацию на уровне процессора или компилятора. А это дополнительно означает, что распараллелить цикл по вычислителям будет очень трудно. В решении этого вопроса помогает функциональный подход и итераторы. Если известно о независимости вычислений значений каждого отдельного шага — надо сообщать об этом компилятору явно.

Все предыдущие публикации.

Читать дальше →

Process Mining c bupaR

Reading time3 min
Views2.4K

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

В этой статье мы рассмотрим bupaR open-source пакет для анализа бизнес-процессов на языке R. В качестве IDE использовалась RStudio.

Допустим, у нас уже есть файл (csv) журнала (лога) событий активностей пользователей в интернет-магазине. Воспользуемся пакетом readr для загрузки лога событий из данного файла и методом  activities_to_eventlog из bupaR для преобразования:

Читать далее

Отправляем SMS-сообщение на телефон с помощью R

Reading time2 min
Views9.2K

В 2013 году я отправлял себе прогноз погоды в sms-сообщении на телефон, используя для этого скрипт на R, API одного из онлайн-сервисов погоды, утилиту sendEmail и включенную услугу "e-mail to SMS". В 2022 году оказалось, что способ отправки SMS на телефон до сих пор работает (далее пример для оператора МТС Урал).

Читать далее

Как выбрать правильный тип палитры для шкалы

Reading time6 min
Views4.7K

Цвет — мощное средство визуализации данных, его неумеренное или неправильное применение губит всю работу и сбивает с толку, поэтому цвет следует подбирать тщательно, не забывая об особенностях восприятия.

О типах палитр цветов и о том, как выбрать правильную палитру, рассказываем к старту курса по анализу данных.

Читать далее

Лущим веб с помощью R

Reading time6 min
Views5K


Кадр из мультфильма «Раз горох, два горох», 1981, Союзмультфильм


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


Ниже три непридуманные истории, объединенные одной целью — достать информацию из открытого источника. Весь код написан «на салфетке», имеет сугубо иллюстративный и развлекательный характер.


Является продолжением серии предыдущих публикаций.

Читать дальше →

Мультимодальные нейронные сети, как искусство

Reading time8 min
Views12K

В прошлой статье, рассказывая про GPT-J-6B, я упоминал, что современные алгоритмы обработки естественного языка вызывают немалый ажиотаж даже среди людей, мало слышащих про машинное обучение. И вот, не успел ещё стихнуть шум обсуждений про возможности GPT-3 от OpenAI, как нам показали ещё одну работу их команды в области ИИ, которую назвали в честь Сальвадора Дали и робота ВАЛЛ·И – DALL-E.

Читать далее

Рефакторинг Shiny приложений

Reading time10 min
Views2.6K


Кадр из фильма «Формула любви», 1984


В жизненном цикле любого эксплуатируемого ПО наступает фаза, когда накопившийся набор изменений (CR) ложится неподъемным грузом на первичную архитектуру и вот тут наступает пора рефакторинга. Много книг понаписано на эту тему, есть специфика для различных языков. Ниже затронем только отдельные аспекты, которые могут оказаться полезным применительно к RStudio Shiny приложениям. Это ряд практических методов, трюков и нюансов, накопившихся при рефакторинге, как правило, чужого Shiny кода.


«Aliena nobis, nostra aliis» — Ежели один человек построил, другой завсегда разобрать сможет.


Это было в фильме, в первоисточнике несколько по-другому. Фраза Публилия Сира «Aliena nobis, nostra plus aliis placent» переводится как «Чужое нам, наше же в основном другим нравится».
Но кузнец Степан все равно дело говорит.


Является продолжением серии предыдущих публикаций.

Читать дальше →

Заметки по языку R | Часть 2: Используем синтаксический сахар и приёмы Python в R

Reading time7 min
Views4.7K

Заметки по языку R - это серия статей, в которых я собираю наиболее интересные публикации канала R4marketing из рубрики "#заметки_по_R".

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

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

Читать далее

Заметки по языку R | Часть 1: Построение нетипичных диаграмм, и подписи данных в ggplot2

Reading time5 min
Views5.6K

В ноябре 2018 года я запустил телеграм канал R4marketing. Канал посвящён языку R, посты канала разделены по рубрикам, одна из таких рубрик "Заметки по R". В эту рубрику входят небольшие публикации, с интересным или полезными советами по использованию R.

Этой статьёй я начинаю серию публикаций состоящих из подборок наиболее полезных заметок канала R4marketing.

Первая статья будет посвящена визуализации данных.

Читать далее

Геоаналитика с помощью Python и открытых данных: пошаговое руководство

Reading time11 min
Views50K

Геоаналитика с помощью Python: GeoPandas, folium, Uber H3, OSM + примеры как можно определять лучшие локации для поиска помещений под открытие кофейни (и не только).

Читать далее

process mining: 100 строк кода и генератор логов у нас в руках

Reading time9 min
Views3.3K


Продакт-менеджерам посвящается...


Заступая на территорию proccess mining, каждый участник рано или поздно будет нуждаться в наборе логов событий, отражающих те или иные специфические моменты в процессах. Эти логи нужны как на этапе демонстрации решения, подсвечивания определенных вопросов, так и для отработки алгоритмов или же тестов на производительность. Оба рекомендуемых сценария «взять с продуктивных систем» или «взять из интернета» терпят фиаско. Как правило, это очень
малые датасеты, слабо удовлетворяющие потребностям как по наполнению, так и по объему.


Остается вариант — написать генератор правдоподобных логов самостоятельно. Тут тоже есть два варианта.


  • Вариант первый — превратить эту задачу в универсальный монстроподобный продукт, содержащий визуальный конструктор в нотации BPMN 2.0, всевозможные визуальные конструкторы формул и атрибутов, полноценную имитационную машину под капотом. Годы работы, миллионы на ветер, на выходе — файл с логами. КПД близок к нулю.
  • Вариант второй — отнестись к этой задаче как к вспомогательной и создать инструментами data science стека упрощенный генератор в 100 строк кода.

Остановимся далее на втором варианте.


Является продолжением серии предыдущих публикаций.

Читать дальше →

Анализ распределения временных интервалов между покупками на R

Reading time10 min
Views4.5K

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

Я представляю:

1. Код на R для анализа любых временных интервалов.

2. Подбор экспоненциального и степенного распределения под данные с помощью метода максимального правдоподобия (MLE). Для экспоненциального я использую fitdistr() из пакета MASS, а для степенного fit_power_law() из пакета igraph.

3. Проверку данных на соответствие подобранному распределению с помощью теста Колмогорова-Смирнова. Я использую функцию ks.test() из пакета stats.

Читать далее

Список ноотропов, покупка которых не окажется пустой тратой денег

Reading time5 min
Views311K

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

Читать далее

Как создать Trello — dashboard, чтобы задачи из 5 досок собирались в одной?

Reading time5 min
Views7.5K

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

Какие есть варианты?

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

Читать далее

Проверка гипотезы равенства средних при неравной дисперсии в R

Reading time3 min
Views4.7K

Задача определения равенства средних при условии равных дисперсий - классическая задача математической статистики, которую решают в техникумах и ВУЗах. Однако МС как наука очень похожа на болото - при попытке спрыгнуть в сторону с кочки классически решаемой задачи можно увязнуть или вовсе утонуть

Рассматриваемая задача - одна из таких. На самом деле, заботливыми математиками уже разработано порядка двух десятков разных статистических тестов для решения такого рода задач, что ставит вопрос из разряда "какой из них применять"

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

Читать далее

Дети, русский язык и R

Reading time4 min
Views15K

Типичная ситуация в нынешнем образовательном процессе в школе. На часах 22:00, в электронном дневнике ребенка появляется новое задание. В лучшем случае на послезавтра, но обычно на завтра.


Вариантов реакции три:


  • не делать вовсе;
  • «не заметить» и отложить решение вопроса на потом;
  • попробовать сделать.

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


Выбирая третий вариант, в отдельных случах даже задания по русскому языку можно попробовать решить с помощью R, принимая во внимание, что на все про все есть 15-20 минут максимум. 5 минут на «экстремальное программирование», 10-15 минут на чистовое оформление. Когда принципиально задача решена оформление можно уже и утром сделать


Является продолжением серии предыдущих публикаций.

Читать дальше →

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity