Как стать автором
Поиск
Написать публикацию
Обновить
6.65

R *

Язык для статистической обработки данных

Сначала показывать
Порог рейтинга
Уровень сложности

Пишем telegram бота на языке R (часть 5): Управление правами пользователей бота

Время на прочтение9 мин
Количество просмотров3.7K

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


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


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

Пишем telegram бота на языке R (часть 4): Построение последовательного, логического диалога с ботом

Время на прочтение9 мин
Количество просмотров4.7K

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


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


Также в данной статье мы научимся использовать под капотом бота базы данных, в нашем примере это будет SQLite, но вы можете использовать любую другую СУБД. Более подробно о взаимодействии с базами данных на языке R я писал в этой статье.


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

Машинное обучение в среде SQL Server

Время на прочтение3 мин
Количество просмотров5.5K


Инструментарий ML внутри SQL Server

В этой статье описаны шаги по созданию процедуры, которая использует набор данных mtcars, входящий в состав R, на основе которой создается простая обобщенная линейная модель (ОЛМ), способная прогнозировать вероятность оснащения автомобиля механической коробкой передач. Вторая процедура предназначена для оценки — она вызывает модель, созданную в первой процедуре, для вывода набора прогнозов на основе новых данных.
Читать дальше →

Учимся обращаться к данным и запрашивать их при помощи Google BigQuery. С примерами на Python и R

Время на прочтение4 мин
Количество просмотров8.9K
Привет, Хабр!

Совсем недавно у нас вышла подробная книга о работе с хранилищем данных Google BigQuery. Сегодня мы решили вновь кратко затронуть эту тему и опубликовать небольшой кейс о выполнении запросов к данным BigQuery на Python и R.

Сообщите в комментариях, интересует ли публикация на тему машинного обучения с применением BigQuery


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

Анализируй это: оценки игр на Metacritic

Время на прочтение13 мин
Количество просмотров12K
Привет, мир Хабр!

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

Предыстория


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

Почему я выбрал именно эту базу? Потому, что люблю игры. А ещё, потому что в июне случился скандал вокруг игры The Last of Us. Part II, которая получила практически полное признание критиков, и была крайне негативно воспринята частью игрового сообщества.

Мне было интересно найти ответ на несколько вопросов:

  1. Насколько соответствуют друг другу оценки прессы и игроков?
  2. Существует ли значимая динамика в а) оценках прессы; б) оценках игроков; в) разности оценок?

И я приступил к поиску ответов.
Читать дальше →

Пишем telegram бота на языке R (часть 3): Как добавить боту поддержку клавиатуры

Время на прочтение16 мин
Количество просмотров10K

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


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


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

Пишем telegram бота на языке R (часть 2): Добавляем боту поддержку команд и фильтры сообщений

Время на прочтение10 мин
Количество просмотров6K

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


В этой статье я продолжаю данную тему, поэтому приступать к чтению данной статьи я рекомендую только после прочтения первой части.


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


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


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

Пишем telegram бота на языке R (часть 1): Создаём бота, и отправляем с его помощью сообщения в telegram

Время на прочтение12 мин
Количество просмотров18K

Аудитория telegram ежедневно растёт с геометрической прогрессией, этому способствует удобство мессенджера, наличие каналов, чатов, и конечно возможность создавать ботов.


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


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


Я планирую написать серию статей, о том, как на языке R работать с telegram bot API, и писать ботов под свои нужды.



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

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

Пакеты-пакеты-пакеты… Насколько эффективно вы используете R?

Время на прочтение11 мин
Количество просмотров3.1K

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


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


R образца 2020 года очень сильно отличается от R даже 2018 года. В самом базовом коде были внесены достаточно значимые изменения для повышения эффективности и стабильности работы (скорость и потребление памяти). Но более динамичная часть экосистемы — это пакеты. Их коллекцию полезно периодически пересматривать с тем, чтобы перейти на более удобные и производительные реализации. С момента прошлой публикации «Джентельменский набор пакетов R для автоматизации бизнес-задач» и сами пакеты претерпели серьезные модернизации и спектр их достаточно сильно расширился и лидеры многократно менялись местами.


Не секрет, что мейнстрим не означает максимальную эффективность и универсальность. Придерживаясь рамок мейнстрима очень легко пропустить пакеты, которые являются жемчужинами. Особенно удобно открывать их на R конференциях UseR!, Rconf, eRum, и т.д.


Ниже приведен список пакетов общего применения, который оказывается весьма полезным при решении повседневных задач (x пакетов из >10K на CRAN). Часто оказывается так, что многие новинки оказываются неизвестны собеседникам. Для сводного ознакомления по срезу на июль 2020 публикую в виде подборки. Ссылки, в большинстве случаев, ведут на страницу с подборкой функций. Уверен, что каждый найдет для себя что-то полезное.

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

R Markdown. Как сделать отчет в условиях неопределенности?

Время на прочтение2 мин
Количество просмотров4.5K

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


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


Что будет делать классический Excel-Word аналитик? Под каждый новый запрос делать кастомный отчет и сохранять его в отдельный файл. Но можно заглянуть немного под капот и заставить компьютер делать все самостоятельно.


R Markdown позволяет все это выполнить в элегантной форме. Некоторые технические детали ниже.

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

Медианы выборок. Доверительные интервалы и сравнение

Время на прочтение3 мин
Количество просмотров6.8K

Публикация носит характер описания тропинки, выводящей к эффективной алгоритмизации методов вычисления доверительного интервала (Confidence Interval = CI) для


  • медианы распределения;
  • разницы медиан двух распределений.

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


Выборки по объему большие, 10^5 — 10^7 записей, ощутимо ассимметричные, с длинными хвостами, могут иметь несколько мод. В этом случае медианы более устойчивы к выбросам.


Применение классической статистики, например, критерия Уилкоксона-Манна-Уитни, для оценки разницы медиан на таких объемах не проходит. Да и очень много чего читать надо под звездочками, чтобы правильно применять эти критерии. Ведь этот критерий проверяет отнюдь не равенство медиан, да и для медиан он работает только при одинаковых формах распределений двух выборок. И т.д. и т.п.


Хвататься за молоток бутстрапа можно, но и с ним надо думать + на симуляцию требуется время и память.


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

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

Немного про периодограммы временных рядов

Время на прочтение4 мин
Количество просмотров11K

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


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

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

dplyr 1.0.0 опубликован на CRAN: Видео обзор новых возможностей и произошедших в нём изменений

Время на прочтение11 мин
Количество просмотров2.9K

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


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



Хедли Викхем работает над интерфейсом dplyr с 2014 года, dplyr это потомок plyr, но более быстрый и изящный по синтаксису. За 6 лет синтаксис и функционал dplyr устаканился, в связи с чем 29 мая был официальный релиз версии 1.0.0.


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


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


Эта публикация поможет вам максимально быстро ознакомится со всем, что было изменено или добавлено в dplyr 1.0.0.

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

Ближайшие события

Карантин, онлайн-системы и data science. Кто думает об удержании клиентов?

Время на прочтение4 мин
Количество просмотров1.6K

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


Сейчас ИТ может прийти к бизнесу и потребовать десятки и сотни миллионов на внедрение или разработку модных онлайн-систем. Однако окажется ли это все оправданным? Без построения полноценного управления оттоком клиентов (то что в телекоме называлось 'customer churn prediction') эффективность затраченных средств окажется под большим вопросом и вот почему.


В тематике CRM существует два широко употребляемых маркетинговых тезиса:


  • Стоимость привлечения нового клиента в 10 раз выше стоимости продажи существующему клиенту.
  • Довольный клиент приводит двух, а недовольный уводит десятерых.
Читать дальше →

Бесплатные курсы по Data Science от Harvard University

Время на прочтение4 мин
Количество просмотров28K
image

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

Я сейчас решаю задачу, как из огромной массы жизненно важного контента выбрать тот, который стоит попробовать в первую очередь, как «разметить данные», чтобы нейросеточка у подрастающего поколения обучилась более эффективно. (ontol.org, «Выгорание», «Удаленка», телеграмм-канал).

Предлагаю вам подборку бесплатных онлайн-курсов по Data Scienceот одного из лучших университетов в мире:

Statistics and R


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

Популярность: 284 784 регистраций
Длительность: 4 недели (2-4 часа в неделю)
Стоимость: Бесплатно (сертификат за $249)
Уровень: Intermediate


Data Science: R Basics


Освойте основы R и узнайте как обрабатывать, анализировать и визуализировать данные.

Популярность: 449 708 регистраций
Длительность: 8 недели (1-2 часа в неделю)
Стоимость: Бесплатно (сертификат за $49)
Уровень: Introductory

Простой пример кластерного анализа алкогольных предпочтений по странам на R

Время на прочтение8 мин
Количество просмотров12K

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

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

Сравнение российской рэп сцены используя R и техники Text Mining. Noize Mc, Oxxxymiron, Дядя Женя. Эпизод 2

Время на прочтение8 мин
Количество просмотров11K

R. Text Mining. Rap. Episode 2


Данная статья является продолжением материала «Сравнение российской рэп сцены используя R и техники Text Mining. Noize Mc and Kasta vs Pharaoh and Morgenshtern» и сейчас я постараюсь детально проанализировать творчество Нойз Мс и Оксимирона. Однако, хочу отметить, что это не будет сравнение между ними. Цель этой статьи не показать кто из них круче, а передать глубину и разнообразие их музыки, которой мы имеем возможность наслаждаться в реальном времени. Нам очень повезло, что мы можем следить за их успехами и ходить на их концерты. В этом материале не будет сопоставления как в первой части, не будет такого сильного контраста.

В этот раз анализ также делался при помощи R, Python и API Genius.com Подробнее можно прочитать в первой части, так как не хочу повторяться.
Читать дальше →

Применение R при вычислениях с неограниченной разрядностью

Время на прочтение4 мин
Количество просмотров2.7K

Периодически встречаются задачи, даже в обыденной жизни, когда разрядной точности float64/int64 оказывается недостаточной для того, чтобы получить ответ с требуемой точностью. Метаться в поисках другого инструмента? Тоже вариант.


А можно этого и не делать, а проявить любопытство и узнать, что для вычисления с произвольной точностью давным-давно сделана библиотека GNU MPFR к которой есть обертки почти к всем языкам. Практика показывает, что с этой библиотекой вообще мало кто знаком, что вызвано, наверное, особенностями программ обучения в ВУЗ-ах и последующим программистским мейнстримом.


Библиотека хороша и заслуживает того, чтобы на нее обращали внимание, хотя бы в рамках расширения кругозора. По R к ней есть обертка Rmpfr. Ниже приведу простенький пример на задачках для школьников (ну не трогать же проектные данные под NDA) и затрону ряд классических граблей, на которые наступают почти сразу же.


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

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

Сравнение российской рэп сцены используя R и техники Text Mining. Noize Mc and Kasta vs Pharaoh and Morgenshtern

Время на прочтение8 мин
Количество просмотров37K

R. Text Mining. Rap


Популярность многих современных рэп исполнителей остается для меня и других приверженцев “старой школы” большой загадкой. Постоянные споры о том, кто лучше, чьи тексты интереснее, чья музыка разнообразнее занимают умы многих интернет-пользователей. Чтобы подтвердить эти споры не просто словами, а фактами я проанализировал тексты четырех российских рэп исполнителей, используя для этого язык программирования R.
Читать дальше →

Язык R для пользователей Excel (бесплатный видео курс)

Время на прочтение6 мин
Количество просмотров35K

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


В начале карантина я решил довести до ума некоторые проекты начатые несколько месяцев назад. Одним из таких проектов был видео курс "Язык R для пользователей Excel". Этим курсом я хотел снизить порог вхождения в R, и немного восполнить существующий дефицит обучающих материалов по данной теме на русском языке.


Если всю работу с данными в компании, в котороый вы работаете принято по-прежнему вести в Excel, то предлагаю вам познакомится с более современным, и при этом совершенно бесплатным инструментом анализа данных.


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

Вклад авторов