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

R *

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

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

Голуби брутфорсят парадокс Монти Холла лучше людей

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

Голуби дают людям фору в решении дилеммы Монти Холла, что могло бы позволить им успешно выступать на одноименном ток-шоу. Это закономерность может, в свою очередь, излить свет на то, почему людям так трудно она дается.



Чем примечательна эта дилемма? При кажущейся простоте, она запутывает логические цепочки наших умозаключений, заставляя людей (но не голубей), в буквальном смысле, блуждать в трех соснах, вернее — в дверях. Это свойственно представителям самых разных культурных традиций: американцы, китайцы, шведы и бразильцы совершают одинаково неверный выбор.


Когнитивный психолог Massimo Piattelli-Palmarini заметил по этому поводу: Ни одна статистическая задача даже рядом не стоит по способности дурачить всех людей и во все времена.


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

оставить или поменять

Выборы-2016. Часть 2 — удивительное рядом и оно разрешено

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

В первой части статьи о выборах 2016 года шла речь о результатах в 225 избирательных округах. В этот раз рассмотрим данные о результатах голосования по участковым избирательным комиссиям (УИК), которых насчитывалось чуть менее 100 тысяч. Этот уровень детализации позволяет увидеть неожиданные явления и удивительные закономерности в результатах голосования.


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

Выборы-2016. Часть 1 — результаты и сравнения

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

В сентябре прошли выборы в Госдуму РФ VII созыва. При голосовании вся территория России была разделена на 225 округов. В каких округах каждая из партий получила высокие (или низкие) результаты? Какие значения принимала явка избирателей и как она влияла на результаты партий? Ответы на эти вопросы и ряд других наблюдений представлены в этой публикации.


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

Кластеризация с пакетом ClusterR, часть 2

Время на прочтение7 мин
Количество просмотров7.1K
Эта статья посвящена кластеризации, а точнее, моему недавно добавленному в CRAN пакету ClusterR. Детали и примеры ниже в большинстве своем основаны на пакете Vignette.

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

Наиболее известные примеры алгоритмов кластеризации — кластеризация на основе связности (иерархическая кластеризация), кластеризация на основе центров (метод k-средних, метод k-медоидов), кластеризация на основе распределений (GMM — Gaussian mixture models — Гауссова смесь распределений) и кластеризация на основе плотности (DBSCAN — Density-based spatial clustering of applications with noise — пространственная кластеризация приложений с шумом на основе плотности, OPTICS — Ordering points to identify the clustering structure — упорядочивание точек для определения структуры кластеризации, и др.).

В первой части: гауссова смесь распределений (GMM), метод k-средних, метод k-средних в мини-группах.
Читать дальше →

Как программист машину покупал. Часть II

Время на прочтение11 мин
Количество просмотров40K
В предыдущей статье на примере покупки Mercedes-Benz E-klasse не старше 2010 года выпуска стоимостью до 1.5 млн рублей в Москве была рассмотрена задача поиска выгодных автомобилей. Под выгодными следует понимать предложения, цена которых ниже рыночной в текущий момент среди объявлений, собранных со всех наиболее авторитетных сайтов по продаже б/у автомобилей в РФ.

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


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

Применение R для подготовки и передачи «живой» аналитики другим бизнес-подразделениям

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

В этой краткой заметке хочу поделиться еще одним вариантом использования R в повседневных бизнес задачах. Этот «use-case» актуален почти для всех компаний, вне зависимости от их размера. Речь идет о подготовке различных оперативных отчетов и аналитических срезов.


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

Женщины и убийства: есть ли тут взаимосвязь? [часть 1 из 2]

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


UPD Добавил R код (gist) для воспроизведения всех результатов


Исследование, недавно опубликованное в престижном научном журнале Human Nature, обнаружило, что преобладание женщин сопряжено с более высокой преступностью. Вывод сильно противоречит житейскому представлению о том, что где мужчины, там и преступления. Однако он находит поддержку в сравнительно молодых теориях формирования брачных рынков.


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


Я проверил, наблюдается ли подобная закономерность в Европе на уровне стран. Заинтересованных прошу под кат.


Немного об этом посте не слишком хабровского формата

Изначально мое внимание к исследованию привлек пост в блоге демографа Бориса Денисова. В дискуссии с ним же родилась идея проверить закономерность на странах Европы. Проверил. Результаты интересные. И стал думать, где опубликовать. В очередной раз пришел к выводу, что лучше хабра варианта нет. Понимаю, что тема, вероятно, заинтересует меньшую часть аудитории сообщества. И все же я надеюсь на доброжелательное отношение и ценные комментарии — очень хочется услышать мнения "со стороны". Что касается категоризации статьи — думаю, на хабре не помешал бы хаб (или даже поток) "Академия" (писал от этом раньше в комментарии).


В свое оправдание могу сказать, что те, кому не интересна демография, найдут в этом посте R код, позволяющий в автоматическом режиме скачать данные о населении из двух прекрасных баз данных — Eurostat и Human Mortality Database и воспроизвести все графики, включая и карты. (Ссылка на код в конце статьи)

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

Школа Данных «Билайн», на Неве

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


Привет, Хабр! Вы уже не раз слышали про то, что мы проводим курсы машинного обучения и анализа данных в Школе Данных «Билайн». Сегодня мы отмечаем уже 6-й выпуск на нашем аналитическом курсе и 4й — на курсе для менеджеров. Только успев выпустить один курс — мы набираем новый. После каждого очередного выпуска мы собираем обратную связь от наших слушателей, анализируем ее и делаем нашу программу еще более насыщенной практикой и примерами из реального бизнеса.

Нам пишут со всей страны и из-за ее пределов с вопросами, когда Школа Данных появится в их городе. Мы откликнулись на эти пожелания и расширяем наше присутствие.

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

Курс начинается 28-го октября, будет проходить по понедельникам и пятницам в вечернее время с 19.00 до 21.00 в офисе компании «Билайн» по адресу Васильевский остров, 21 линия, д. 6, литер А (ближайшая станция метро «Василеостровская»).

Впереди нас ждет 18 занятий (курс рассчитан на 9 недель), на которых мы постараемся покрыть самые важные темы анализа данных.
Читать дальше →

Лекции Техносферы. 1 семестр. Введение в анализ данных (весна 2016)

Время на прочтение3 мин
Количество просмотров44K
Слушайте и смотрите новую подборку лекций Техносферы Mail.Ru. На этот раз представляем в открытом доступе весенний курс «Введение в анализ данных», на котором слушателей знакомят со сферой анализа данных, основными инструментами, задачами и методами, с которыми сталкивается любой исследователь данных в работе. Курс преподают Евгений Завьялов (аналитик проекта Поиск Mail.Ru, занимающийся извлечением полезных бизнесу знаний из данных, генерируемых поисковым движком и десктопными приложениями), Михаил Гришин (программист-исследователь из отдела анализа данных) и Сергей Рыбалкин (старший программист из студии Allods Team).

Лекция 1. Введение в Python


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


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

Запрягаем R на службу бизнесу на «1-2-3»

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

Настоящий пост является является, фактически, резюме, подводящим итоги предыдущих «технологических» публикаций [1, 2, 3, 4, 5] и возникших дискуссий и обсуждений. Последние показали, что задач в которых применение R могло бы оказать хорошую помощь бизнесу очень и очень много. Однако, даже в тех случаях, когда R используется, далеко не всегда для этого применяются современные возможности R.

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

О степенях свободы в статистике

Время на прочтение8 мин
Количество просмотров240K
В одном из предыдущих постов мы обсудили, пожалуй, центральное понятие в анализе данных и проверке гипотез — p-уровень значимости. Если мы не применяем байесовский подход, то именно значение p-value мы используем для принятия решения о том, достаточно ли у нас оснований отклонить нулевую гипотезу нашего исследования, т.е. гордо заявить миру, что у нас были получены статистически значимые различия.

Однако в большинстве статистических тестов, используемых для проверки гипотез, (например, t-тест, регрессионный анализ, дисперсионный анализ) рядом с p-value всегда соседствует такой показатель как число степеней свободы, он же degrees of freedom или просто сокращенно df, о нем мы сегодня и поговорим.


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

Кластеризация с пакетом ClusterR, часть 1

Время на прочтение8 мин
Количество просмотров14K
Эта статья посвящена кластеризации, а точнее, моему недавно добавленному в CRAN пакету ClusterR. Детали и примеры ниже в большинстве своем основаны на пакете Vignette.

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

Наиболее известные примеры алгоритмов кластеризации — кластеризация на основе связности (иерархическая кластеризация), кластеризация на основе центров (метод k-средних, метод k-медоидов), кластеризация на основе распределений (GMM — Gaussian mixture models — Гауссова смесь распределений) и кластеризация на основе плотности (DBSCAN — Density-based spatial clustering of applications with noise — пространственная кластеризация приложений с шумом на основе плотности, OPTICS — Ordering points to identify the clustering structure — упорядочивание точек для определения структуры кластеризации, и др.).
Читать дальше →

ANOVA, или кто комментирует?

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

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

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

Вам не хватает скорости R? Ищем скрытые резервы

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

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

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

Запуск функций R на нескольких машинах

Время на прочтение6 мин
Количество просмотров3.9K
Как мы показали в «Небольшом введении в параллельное программирование на R», одно из преимуществ R — легкость, с которой можно воспользоваться преимуществами параллельного программирования для ускорения вычислений. В этой статье мы расскажем, как перейти от запуска функций на нескольких процессорах или ядрах к запуску на нескольких машинах (с целью еще большего масштабирования и ускорения).

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

  • Подключайте более мощные параллельные библиотеки, например, Intel BLAS (доступна под Linux, OS X и Windows как часть дистрибутива Microsoft R Open). Это позволит заменить уже используемые библиотеки их параллельными версиями, благодаря чему получите ускорение (на соответствующих задачах, например, связанных с линейной алгеброй в lm()/glm()).

  • Вынесите обработку задач моделирования из R во внешнюю библиотеку для параллелизации. Это стратегия, которую используют следующие системы: методы rx от RevoScaleR (теперь Microsoft Open R), методы h2o от h2o.ai, RHadoop.

  • Используйте утилиту parallel в R, чтобы запускать функции на других экземплярах R. Эта стратегия из «Небольшого введения в параллельное программирование на R» и ряда библиотек на основе parallel. Фактически это реализация удаленного вызова процедуры через сокет или сеть.

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

Применение R для работы с утверждением «Кто виноват? Конечно ИТ!»

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

Продолжение предыдущих публикаций «Инструменты DataScience как альтернатива классической интеграции ИТ систем»,
«Экосистема R как инструмент для автоматизации бизнес-задач» и Джентельменский набор пакетов R для автоматизации бизнес-задач. Настоящая публикация преследует 2 цели:


  1. Взглянуть на типичные задачи, которые встречаются в бизнесе, под немного другим углом.
  2. Попробовать их решить, частично или полностью, с использованием средств, предоставляемых R.
Читать дальше →

Джентельменский набор пакетов R для автоматизации бизнес-задач

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

Продолжение предыдущих публикаций «Инструменты DataScience как альтернатива классической интеграции ИТ систем» и
«Экосистема R как инструмент для автоматизации бизнес-задач».
Настоящая статья является ответом на возникшие вопросы по пакетам R, которые полезны для реализации описанных подходов. Я ее рассматриваю исключительно как справочную информацию, и отправную точку для последующего детального изучения заинтересовавшимися, поскольку за каждым пакетом скрывается огромное пространство со своей философией и идеологией, математикой и путями развития.


Как правило, все пакеты (9109 штук на 07.09.2016) находятся в репозитории CRAN. Те, что по тем или иным причинам, пока не опубликованы в репозиторий, могут быть найдены на GitHub. Итак, кратким списком:

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

Экосистема R как инструмент для автоматизации бизнес-задач

Время на прочтение7 мин
Количество просмотров12K
Настоящая статья является продолжением предыдущей публикации «Инструменты DataScience как альтернатива классической интеграции ИТ систем». Основная цель — заострить внимание как разработчиков, так и руководителей среднего звена, на широком спектре возможностей, которые предоставляют современные инструменты из сферы Data Science за рамками классических задач статистических вычислений и модной нынче темы машинного обучения. В частности, возможности экосистемы R по состоянию на август 2016 года и применение этих возможностей на примере двух задач: одной из прикладной науки, другой – из среднего бизнеса.
Читать дальше →

Инструменты Data Science как альтернатива классической интеграции ИТ систем

Время на прочтение6 мин
Количество просмотров14K
В настоящий момент уже можно считать, что страсти по Big Data и Data Science немного утихли, а ожидание чуда, как обычно, было сильно скорректировано реальностью физического мира. Самое время заняться конструктивной деятельностью. Поиск тем на Хабре по различным ключевым словам выдал крайне скудный набор статей, поэтому я решил поделиться тем опытом, который был накоплен в части практического применения инструментов и подходов Data Science для решения повседневных задач в компании.
Читать дальше →

Графические модели на основе гауссовых копул

Время на прочтение10 мин
Количество просмотров8.9K
Лог-линейные модели и их представления в виде марковских сетей позволяют показать структуру взаимосвязей между случайными величинами. Однако полученная визуализация может оказаться трудна для восприятия из-за большого числа равнозначных ребер в графе такой модели. При работе с порядковыми и бинарными переменными гауссовы копулы (Gaussian copula graphical models, сокр. GCGM) дают возможность повысить наглядность и упростить интерпретацию модели. В статье приведен краткий обзор теории и построен пример GCGM для European Social Survey данных.


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

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