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

R *

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

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

Быстрая загрузка данных из файлов в R

Время на прочтение3 мин
Количество просмотров10K
Недавно мы писали приложение на Shiny, где нужно было использовать очень большой блок данных (dataframe). Это непосредственно влияло на время запуска приложения, поэтому пришлось рассмотреть ряд способов чтения данных из файлов в R (в нашем случае это были csv-файлы, предоставленные заказчиком) и определить лучший.

Цель этой заметки — сравнить:

  1. read.csv из utils — стандартный способ чтения csv-файлов в R
  2. read_csv из readr, который в RStudio заменил предыдущий метод
  3. load и readRDS из base, и
  4. read_feather из feather и fread из data.table.
Читать дальше →

RStudio Connect — «фейслифтинг» Shiny для корпоративного применения

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

Прошло достаточно времени с упоминания в предыдущей публикации об использовании RStudio Connect в боевых условиях для того, чтобы поделиться результатами. Краткое резюме — «дайте два!». И подумайте про оптимизацию отдела «аналитиков». Ниже приведены подробности.


В качестве дополнительного чтения рекомендую взглянуть детальную публикацию «Data at GDS (Government Digital Service). Reproducible Analytical Pipeline» в блоге аналитической службы гос.органов UK по аналогичной теме.


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

О линейной регрессии: байесовский подход к курсу рубля

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


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

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

R, GIS и fuzzyjoin: восстанавливаем статистические данные для регионов NUTS

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

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


Что такое NUTS?


NUTS расшифровывается как Nomenclature of Territorial Units For Statistics. Это стандартизированная система административно-территориального деления, принятая странами Евросоюза. История вопроса уходит в 1970-е, когда родилась идея сделать регионы различных стран Европы сопоставимыми. В более или менее законченном и широко употребимом виде система появилась лишь на рубеже веков. Существуют три основных уровня NUTS (см. рис. 1), и наиболее распространенным в региональном анализе оказывается NUTS-2.


fig1
Рисунок 1. Иллюстрация принципа выделения регионов NUTS различного иерархического уровня

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

«Пятый элемент» в экосистеме R. WYSIWYG интерфейс для аналитиков

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

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


Практика общения с аналитиками показала, что лаконичная консоль или лист программы в RStudio IDE как удобный инструмент начинает восприниматься людьми, воспитанными в подходе WYSIWYG, далеко не с первого дня. Продукты PowerBI\Tableau\Qlik, активно использующие этот подход, хорошо известны в российском информационном пространстве и зачастую аналитики пытаются соотнести R+Shiny с этими продуктами.

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

История 3-го места на ML Boot Camp III

Время на прочтение5 мин
Количество просмотров13K
Недавно завершился контест по машинному обучению ML Boot Camp III от Mail.Ru.

Будучи новичком в machine learning мне удалось занять 3-е место. И в этой статье я постараюсь поделиться своим опытом участия.
Читать дальше →

Тонкости R. Как минута час экономит

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

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


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


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

R в enterprise задачах. Хитрости и трюки

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

Несмотря на то, что задачи рядового бизнеса очень часто далеки от популярной темы больших данных и машинного обучения и часто связаны с обработкой относительно малых объёмов информации [десятки мегабайт — десятки гигабайт], размазанной в произвольных представлениях по различным видам источников, применение R в качестве основного инструмента позволяет легко и элегантно автоматизировать и ускорить эти задачи.


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


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

Разница между статистикой и наукой о данных

Время на прочтение8 мин
Количество просмотров14K
Здравствуйте, уважаемые читатели. Мы вновь попробуем посоветоваться с вами по поводу актуальности орейлевской новинки. На сей раз речь пойдет о статистике для Data Science.

Объем оригинала — 250 стр., дата выхода — 25 февраля.


В книге рассмотрены лаконичные кейсы с небольшим количеством графиков и примеров на языке R.

Чтобы размышлять и голосовать было интереснее — под катом найдете статью, автор которой попытался уловить и описать разницу между статистикой и Data Science
Читать дальше →

Разработка на R: тайны циклов

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

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


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

Школа Данных «Билайн»: с Наступающим

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


Итак, заканчивается 2016 год. Для нас он был очень активным. Было 6 выпусков нашего курса для аналитиков, 5 выпусков курса для менеджеров (Data-MBA). Мы запустили курс в Санкт-Петербурге и уже провели первый выпуск. В партнерстве мы также обучали студентов Высшей Школы Экономики и Российской Экономической Школы, проводили мастер-классы в Сколково, участвовали в десятках хакатонов по всей стране, консультировали ведущие компании касательно применения аналитики и монетизации данных. В этом году один из наших преподавателей стал первым в мире в рейтинге Kaggle.
Читать дальше →

Распределение Пуассона и футбольные ставки

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



Если объединить статистические данные спортивных соревнований с распределением Пуассона, то можно рассчитать вероятное количество мячей, которые будут забиты во время футбольной игры. На этом основании можно понять откуда берутся букмекерские ставки, а также научиться самостоятельно их рассчитывать с помощью R.

ТМ 2.5 ТБ 2.5

Отслеживание хода выполнения в R

Время на прочтение4 мин
Количество просмотров6.7K
Неважно, отдаем ли мы себе в этом отчет, но когда нужно подождать, мы волнуемся и сгораем от нетерпения. Особенно это касается ожидания «вслепую», т.е. когда неизвестно, сколько же еще придется мучиться. Как выяснил Брэд Аллан Майерс, считающийся изобретателем индикатора состояния в 1980-х, возможность отслеживать ход выполнения во время ожидания может значительно улучшить механизм взаимодействия пользователя с приложением (Майерс, 1985).


Типичный индикатор состояния от Simeon87 [GPL], Wikimedia Commons

Поскольку я программирую на R для исследований в биоинформатике, мой код обычно не для широкой публики, но все же важно, чтобы мои пользователи, то бишь коллеги и исследователи, были счастливы, насколько это возможно. Но отслеживание хода выполнения в R — не самая простая задача. В этой статье представлены несколько возможных решений, в том числе и мое собственное (pbmcapply).
Читать дальше →

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

«До чего дошел прогRесс». Замена «умственного» труда механическим процессом на базе R

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

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


На этот раз задача оказалась предельно простая и прагматичная, но ее решение дает далеко идущие последствия.


Кейс


Суть задачи в следующем:

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

Низкоуровневая оптимизация и измерение производительности кода на R

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

За последнее десятилетие R прошёл большой путь: от нишевого (как правило, академического) инструмента до мейнстримной «большой десятки» самых популярных языков программирования. Такой интерес вызван многими причинами, среди которых и принадлежность к open source, и деятельное коммьюнити, и активно растущий сегмент применения методов machine learning / data mining в разнообразных бизнес-задачах. Приятно видеть, когда один из твоих любимых языков уверенно завоёвывает новые позиции, и когда даже далёкие от профессиональной разработки пользователи начинают интересоваться R. Но здесь есть, однако, одна большая проблема:

Какая же?

data.table: выжимаем максимум скорости при работе с данными в языке R

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

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


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

10 причин почему именно сейчас стоит попробовать Microsoft SQL Server

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

Причина №1 — Microsoft SQL Server теперь работает и под Linux


16 ноября 2016 года Microsoft опубликовал первую публичную кросплатформенную версию SQL Server VNext, которая теперь работает и под Linux: Public preview of the next release of SQL Server — Bring the performance and security of SQL Server to Linux and Windows


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

Еще примеры использования R для решения практических бизнес-задач

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

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

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

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

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


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


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


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


Коротко о гипотезе

Если вам лень заглянуть в первую часть статьи, то вот кратко суть. Авторы опубликованного в журнале Human Nature исследования утверждают, что соотношения полов во взрослом населении влияет на распространенность тяжких преступлений (в частности, убийств): чем больше женщин, тем больше и преступлений. Я по-прежнему думаю, что все дело в упущенной переменной — центральность/периферийность (urban/rural) — которая и должна объяснять как повышенную долю женщин в городах, так и большее количество преступлений в них.


Убедительно подтвердить свои догадки на простеньких европейских данных мне не удалось. Попробуем на подробных американских.


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

Создание интерактивных графиков с R и Highcharts

Время на прочтение6 мин
Количество просмотров7.6K
Иногда в попытках решить простые задачи приходят в голову великие идеи. Это особенно верно для разработчиков, которые готовы приложить массу усилий для решения простой проблемы к полному своему удовлетворению. Эта история о том, как Торстейн Хенси, основатель и СРО Highcharts искал простой инструмент для создания графиков, чтобы поместить на свою домашнюю страницу замеры глубины снега на Викафьеллет, местной горе, где у семьи был коттедж. Разочаровавшись в обычных flash-расширениях и коммерческих решениях, доступных на тот момент, он решил создать собственное и, конечно же, им поделиться.

Для создания красивых графиков в этой статье я воспользуюсь пакетом highcharter Джошуа Кунста, оболочкой для javascript-библиотеки Highcharts и Shiny.

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

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