Все потоки
Поиск
Написать публикацию
Обновить
1.7

R *

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

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

Расшифровываем формулу Хабра-рейтинга или восстановление функциональных зависимостей по эмпирическим данным

Время на прочтение6 мин
Количество просмотров23K
Если вы когда-нибудь читали раздел помощь на Хабре, то наверняка видели там прелюбопытнейшую строчку:
Допустим, вы написали публикацию с рейтингом +100 — это добавило к вашему персональному рейтингу величину Х. Через несколько десятков дней этот самый Х вычтется, тем самым вернув вас на прежнее место.
то наверняка задавались вопросом, что это за Х и с какого он района чему он равен?

Сегодня мы ответим на этот вопрос.


(измеряем Хабра-рейтинг в попугаях)

Структура статьи


  1. Аналитический вывод
  2. Регрессия
  3. Исключения
  4. Устойчивая регрессия
  5. Скрипт и данные
  6. Почему скрывать функцию бесполезно
  7. Что с этим можно сделать?
  8. Интерпретация формулы
Читать дальше →

Новости Microsoft: поддержка R, новый Power BI для аналитики и отчетов, анимация и 3D-графика в облаке

Время на прочтение4 мин
Количество просмотров13K
За последние несколько дней в экосистеме Microsoft произошло сразу три достаточно больших и серьезных события, между собой не связанные, но, так или иначе, имеющие принадлежность к сервисам в облаке и, что еще интересно, к науке и исследованиям. Для того, чтобы не писать три новости, мы решили объединить их в одну. Подробнее – под катом.

Итак:
  1. Open-source пакет для 3D-анимации Blender стал доступен для использования с нашей поддержкой в Microsoft Azure Batch – сервисе для осуществления серий расчетов в облаке.
  2. Microsoft достигла соглашения о приобретении Revolution Analytics – ведущего разработчика ПО и сервисов для R. Как известно, R – один из самых используемых языков для predictive analytics и статанализа. Соглашение с авторитетной в этой области компанией, имеющей большую экспертизу, означает новую функциональность и возможности для разработчиков.
  3. Анонс Power BI Preview – облачного сервиса для бизнес-аналитики для нетехнических бизнес-пользователей.

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

Data tidying: Подготовка наборов данных для анализа на конкретных примерах

Время на прочтение5 мин
Количество просмотров19K
Данная статья возникла в результате переработки и перевода информации на русский язык, взятой из двух источников:

  • из статьи «Tidy Data»
  • из соответствующего swirl урока по tidyr package

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

R reference manual

Время на прочтение1 мин
Количество просмотров8.9K
Дорогие пользователи R! Позвольте поделиться с вами своим справочником для языка, выполненном в канонах windows help. Основной целью его создания была нехватка удобного (по крайней мере для моей жены) reference manual'а. «Удобного» сугубо лично, так как очень хотелось уже по первым трем буквам заголовка находить нужную страницу справочника вместо того, чтобы воевать с Гуглом, который часто не обращает внимание на однобуквенное слово R. Также было неудобно как работать с pdf-мануалом, так и с деревом ссылок справочника. Например, было лень лезть по этому дереву на манер LandingPage->Packages->base package->source. Ну и зачем держать в секрете то, что оболочка моего мануала далеко не нова, изначально делалась под PHP+MySQL и упростила работу многим людям.

Основные преимущества справочника http://r.pohape.ru под катом.
Читать дальше →

Нефтяные ряды в R

Время на прочтение6 мин
Количество просмотров43K
«Графики цен великолепны, чтобы предсказывать прошлое»
Питер Линч



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

Сравнение скорости построения линейных моделей в R и Eviews

Время на прочтение3 мин
Количество просмотров8.7K
Если Вам необходимо оценить эконометрическую модель с небольшим количеством наблюдений, то софт, в котором это можно сделать определяется исключительно Вашими предпочтениями и финансовыми возможностями. Но если количество наблюдений большое? Регрессия не всегда оценивается в одно мгновение. В этом посте я сравниваю время оценки линейной регрессии в R и Eviews в зависимости от количества наблюдений.
Читать дальше →

Анализ тональности текста с помощью Azure Machine Learning

Время на прочтение8 мин
Количество просмотров25K
В этом посте я расскажу, как можно использовать Microsoft Azure Machine Learning для анализа тональности текста, а также с какими проблемами можно столкнуться в процессе использования Azure ML и как их можно обойти.

Что такое анализ тональности хорошо описано в статье «Обучаем компьютер чувствам (sentiment analysis по-русски)».
Нашей целью будет являться построение веб-сервиса, который принимает на вход некоторый текст и возвращает в ответ 1, если этот текст носит позитивный характер, и -1 — если негативный. Microsoft Azure Machine Learning идеально (почти) подходит для этой задачи, так как там есть встроенная возможность опубликовать результаты вычислений как веб-сервис и поддержка языка R — это избавляет от необходимости писать свои костыли и настраивать свою виртуальную машину/веб-сервер. В общем, все преимущества облачных технологий. К тому же, совсем недавно было объявлено, что все желающие могут попробовать Azure ML даже без аккаунта Azure и кредитной карточки — необходим только Microsoft Account.
Читать дальше →

Применение машинного обучения в трейдинге. Часть 2

Время на прочтение6 мин
Количество просмотров21K
Примечание переводчика. Продолжаю перевод серии статей по применению машинного обучения в трейдинге. Предыдущая часть здесь. О любых ошибках и исправлениях пишите в личку.

Как использовать дерево решений для торговли акциями Bank of America.




Предположим вам нравится использовать разнообразные технические индикаторы и вы хотите создать стратегию, которая ищет конкретные высоко-вероятностные возможности на рынке. Что если значение RSI находящееся выше 85 и, одновременно, линия MACD ниже 20, означают хорошую возможность открыть короткую позицию? Вы можете потратить дни/недели/месяцы в попытках вручную просчитать все комбинации ваших индикаторов, а можете использовать дерево решений – мощный и легко интерпретируемый алгоритм.

Для начала давайте разберёмся, как работают дерева решений, затем рассмотрим их использование на примере построения стратегии торговли акциями Bank of America.
Читать дальше →

Несколько слов о «линейной» регрессии

Время на прочтение5 мин
Количество просмотров55K
Иногда так бывает: задачу можно решить чуть ли не арифметически, а на ум прежде всего приходят всякие интегралы Лебега и функции Бесселя. Вот начинаешь обучать нейронную сеть, потом добавляешь еще парочку скрытых слоев, экспериментируешь с количеством нейронов, функциями активации, потом вспоминаешь о SVM и Random Forest и начинаешь все сначала. И все же, несмотря на прямо таки изобилие занимательных статистических методов обучения, линейная регрессия остается одним из популярных инструментов. И для этого есть свои предпосылки, не последнее месте среди которых занимает интуитивность в интерпретации модели.
Читать дальше →

Применение машинного обучения в трейдинге

Время на прочтение8 мин
Количество просмотров43K
Примечание переводчика 1. Я наткнулся на этот блог в одном из обзоров материалов по машинному обучению. Если вы хорошо разбираетесь в машинном обучении, то в этой статье вы не найдете для себя ничего интересного. Она достаточно поверхностная и затрагивает только основы. Если же вы, как и я, только начинаете интересоваться данной темой, то добро пожаловать под кат.
Примечание переводчика 2. Кода будет мало, а тот что есть написан на языке R, но не стоит отчаиваться, если вы его до сих пор никогда в глаза не видели. До этой статьи я тоже ничего о нем не знал, поэтому я специально отдельно написал «шпору» по языку, включив туда все, что вам встретится в статье. Если хотите сами разобраться, то начать рекомендую c маленького курса на CodeSchool. На хабре тоже есть интересная информация и полезные ссылки. И наконец вот тут есть большая шпаргалка.
Примечание переводчика 3. Статья из двух частей, однако самое интересное начинается только во второй части, поэтому я позволил себе объединить их в одну статью.


Часть 1


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

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

R + C + CUDA =…

Время на прочтение4 мин
Количество просмотров13K
Иногда возникает необходимость ускорить вычисления, причем желательно сразу в разы. При этом приходится отказываться от удобных, но медленных инструментов и прибегать к чему-то более низкоуровневому и быстрому. R имеет довольно развитые возможности для работы с динамическими бибиотеками, написанными на С/С++, Fortran или даже Java. Я по привычке предпочитаю С/С++.
Читать дальше →

План-факт, динамика и прибыль на одной диаграмме c помощью R

Время на прочтение2 мин
Количество просмотров9.5K
Каждый раз, когда подводятся финансовые итоги прошедшего года и готовится соответствующая презентация, люди ломают голову, как бы уместить основные цифры на одной диаграмме. Какова бы ни была сфера деятельности организации, подведение итогов, как правило, начинается с анализа основных финансовых показателей, отдельно по каждому из бизнес-направлений:
  • оборот в завершившемся году (фактические цифры);
  • установленные ранее планы на завершившийся год (для анализа выполнения);
  • оборот годом ранее (для понимания динамики);
  • прибыльность.
Стандартная столбчатая диаграмма, которую можно на скорую руку построить в Excel, даёт, мягко говоря, не совсем наглядный результат. К примеру, если у бизнеса четыре направления, то на диаграмме появятся 16 рядом стоящих столбцов, и кто-то может с непривычки спутать передовиков и отстающих.
Специалисты, знакомые с R, могут использовать ggplot2 для программного построения нужной диаграммы, например, такой как здесь. Для примера взяты цифры за 2012 год из годового отчета компании Unilever. Плановые показатели не относятся к публичным данным, поэтому пришлось их выдумать из головы, установив, для определенности, на уровне «прошлый год + 5%».
Исходные цифры находятся в Excel и выглядят так (данные в миллионах евро):
image
Построенная в RStudio диаграмма выглядит следующим образом:
image
Проверьте диаграмму на интуитивность, и не глядя на цифры, предположите, какому показателю какой элемент диаграммы соответствует, а объяснения будут далее.
Читать дальше →

Расширяем возможности MS Excel 2010 c помощью R

Время на прочтение5 мин
Количество просмотров17K
Добрый день, уважаемые читатели.
Сегодня я хочу показать как можно связать возможности языка R и офисного пакета MS Excel 2010. Ниже я расскажу о том, как можно расширить функционал встроенного языка VBA с помощью функций R, а поможет мне в этом надстройка RExcel. Инструкцию по его установке можно без проблем найти в сети или на офф. сайте.

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

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

Анализ и визуализация реальных табличных данных в R

Время на прочтение13 мин
Количество просмотров27K
Материал будет полезен тем, кто осваивает язык R в качестве инструмента анализа табличных данных и хочет увидеть сквозной пример реализации основных шагов обработки.
Ниже демонстрируется загрузка данных из csv-файлов, разбор текстовых строк с элементами очистки данных, агрегация данных по аналитическим измерениям и построение диаграмм.
В примере активно используется функциональность пакетов data.table, reshape2, stringdist и ggplot2.

В качестве «реальных данных» взята информация о выданных разрешениях на осуществление деятельности по перевозке пассажиров и багажа легковым такси в Москве. Данные предоставлены в общее пользование Департаментом транспорта и развития дорожно-транспортной инфраструктуры города Москвы. Страница набора данных data.mos.ru/datasets/655
Исходные данные имеют следующий формат:
ROWNUM;VEHICLE_NUM;FULL_NAME;BLANK_NUM;VEHICLE_BRAND_MODEL;INN;OGRN
1;"А248УЕ197";"ООО «ТАКСИ-АВТОЛАЙН»";"017263";"FORD FOCUS";"7734653292";"1117746207578"
2;"А249УЕ197";"ООО «ТАКСИ-АВТОЛАЙН»";"017264";"FORD FOCUS";"7734653292";"1117746207578"
3;"А245УЕ197";"ООО «ТАКСИ-АВТОЛАЙН»";"017265";"FORD FOCUS";"7734653292";"1117746207578"
```

1. Загрузка первичных данных
Данные можно загружать непосредственно с сайта. В процессе загрузки сразу переименуем колонки удобным образом.
url <- "http://data.mos.ru/datasets/download/655"
colnames = c("RowNumber", "RegPlate", "LegalName", "DocNum", "Car", "INN", "OGRN", "Void")
rawdata <- read.table(url, header = TRUE, sep = ";",
             colClasses = c("numeric", rep("character",6), NA),
             col.names = colnames,
             strip.white = TRUE,
             blank.lines.skip = TRUE,
             stringsAsFactors = FALSE,
             encoding = "UTF-8")
Теперь можно приступать к анализу и визуализации…
Читать дальше →

Анимированные графики в R (и немного про бифуркацию, хаос и аттракторы)

Время на прочтение4 мин
Количество просмотров20K
Однажды для презентации мне понадобились анимированные графики. С графиками, собственно, проблем не возникло, а для их анимации пришлось воспользоваться еще одним пакетом animation, который можно установить из CRAN.
Читать дальше →

Let's fix NAs

Время на прочтение5 мин
Количество просмотров7.3K
Довольно часто встречаются неполные наборы данных, в которых некоторые переменные не определены. В языке R содержимое таких переменных задается как «Not Available» — или сокращенно NA. Соответственно, возникает вопрос, как поступать с неопределенными значениям: стоит ли их игнорировать или откорректировать каким-либо образом?
Читать дальше →

Построение модели SARIMA с помощью Python+R

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

Введение


Добрый день, уважаемые читатели.
После написания предыдущего поста про анализ временных рядов на Python, я решил исправить замечания, которые были указаны в комментариях, но при их исправлении я столкнулся с рядом проблем, например при построении сезонной модели ARIMA, т.к. подобной функции а пакете statsmodels я не нашел. В итоге я решил использовать для этого функции из R, а поиски привели меня к библиотеке rpy2 которая позволяетиспользовать функции из библиотек упомянутого языка.
У многих может возникнуть вопрос «зачем это нужно?», ведь проще просто взять R и выполнить всю работу в нем. Я полность согласен с этим утверждением, но как мне кажется, если данные требуют предварительной обработки, то ее проще произвести на Python, а возможности R использовать при необходимости именно для анализа.
Кроме этого, будет показано как интегрировать результаты выдачи работы функции R в IPython Notebook.
Читать дальше →

Введение в параллельные вычисления в R

Время на прочтение5 мин
Количество просмотров17K
   Эта статья посвящена языку R. Он не так широко распространен на территории ex-USSR, как Matlab и тем более Python, но, безусловно, заслуживает внимания. Нельзя не отметить, что R — фактически стандарт для Data Science (хотя тут хорошо написано, что не R единым живут data scientists). Богатый синтаксис, совместимость с legacy кодом (что весьма важно в научных приложениях), удобная среда разработки RStudio и наличие огромного числа библиотек в CRAN делают R таковым.
Читать дальше →

R: хороплет-карта России с увеличенной европейской частью

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

Коротко о главном: прочитал недавно пост infotanka. Полез на сайт Татьяны Мисютиной и подсмотрел там хороплет-карту России с увеличенной европейской частью. И ведь, действительно, классная идея. Удобно, наглядно. Захотелось сделать себе шаблон под R для таких же графиков. Ведь хорошие идеи должны размножаться делением?
Читать дальше →

R: пакет ellipse для визуализации доверительных областей

Время на прочтение1 мин
Количество просмотров4.9K
Здравствуйте.

В последнем посте из R-хаба «Визуализация двумерного гауссиана на плоскости» был описан алгоритм построения доверительного эллипса по ковариационной матрице. Алгоритм сопровождался примером и R-скриптом.

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

Рассмотрим пример.
Читать дальше →

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