LINUX.ORG.RU

R и с чем это есть

 ,


7

2

Здравствуйте, уважаемые пользователи ЛОР! Очень нужен ваш совет. Я сам занимаюсь психологией и у нас в ходу статистика. Некоторые мои прошаренные коллеги используют R для анализа моделей в исследованиях. Собственно, мне стало тоже очень интересно как я могу использовать этот инструмент. Однако ни одного прошаренного товарища, разбирающегося в R у меня нет. Поэтому вопрос к вам - посоветуйте пожалуйста литературу, которая могла бы мне помочь в изучении, учитывая, что я совершенно новичок в этом. Заранее большое спасибо за любые советы!

У R самодостаточное введение в язык существует. Так и назвается «Введение в R» (см. http://cran.r-project.org/manuals.html)

R писался под влиянием свежепройденного SICP и внутри ничем существенным не отличается от scheme (только естественно было организовано много много синтаксического сахара поверх «скобочек», чтобы в основном эти самые «скобочки» не писать).

Фактически всё что можно увидеть в сициповских лекциях по основам программирования доступно в R.

После официального Введения если не хочется вникать в SICP то можно прочитать книги тех кто вникал, например вот такую онлайн книгу http://adv-r.had.co.nz/

Следует не забывать смотреть встроенную документацию, её писали не ради описания банальностей и за деньги, а строго по необходимости. Также большинство забывает читать http://cran.r-project.org/web/views/

psv1967 ★★★★★ ()
Ответ на: комментарий от psv1967

Еще дает представление о том откуда растут ноги у R и S как системы для анализа данных прочтение раздела о тормозном пути автомобиля вот из этой книги о APL. http://flibusta.net/b/156597

psv1967 ★★★★★ ()

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

- научиться data cleaning

- какой талмуд по нужным тебе статметодам c примерами в R (таких over 9000 и почти все имеют базовое введение в язык)

- Осилить движки для графики, особенно ggplot2

Помимо книг можешь еще посмотреть на курсы курсеры. Там многие по анализу данных и статистике именно на R.

ptarh ★★★★★ ()
Последнее исправление: ptarh (всего исправлений: 2)

Еще раз, по поводу «советов» — читаешь официальное Введение в R, всё остальное чаще всего чушь на коленке сделанная. Когда почувствуешь что хочешь глубже узнать читаешь или что то про схему или Викхама книжку. Все остальное обычно турды программеров на тему «как писать на R как на фортране»(С).

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

psv1967 ★★★★★ ()

Теперь про способ собственно работы с R.

Их принципиально два существует.

1) Реальны проинициализованные объекты языка, а код вторичен. Это когда открыт интерпретатор R и вся работа идет в этом «черном окошечке». У интерпретатора подключен участок памяти и его можно сохранять на диск между сессиями работы с задачей. Исторически это первый и весьма удобный режим использования, у него есть недостаток — хотя история действий ведется, очень легко запутаться при длительной (реально длительной) работе.

2) Когда «реален код», а в образе памяти все временно и преходяще. Такой подход весьма удобен когда код объединен с текстом. Это позволяет во первых получать воспроизводимые результаты, во вторых объединяя текст с результатами вычисления получать готовый отчет (или текст статьи, презентации). Обычно текст оформляют как язык верстки. Современная переписанная набело версия такого режима работы обеспечивается пакетом knitr.

Для коротких работ и экспериментов по ходу выполнения длинной основной работы используют первый режим. А саму длинную работу оформляют в виде документа knitr.

ЗЫ есть альтернатива knitr в виде org-mode-babel для тех кто работает в emacs

psv1967 ★★★★★ ()

В чем собственно работать как в IDE.

Первый режим не нуждается в поддержке IDE, всё встроено в само «черное окошко».

1. Комплектация кода и данных идет по нажатию tab, первое нажатие покажет когда вариант один, второе понадобиться когда вариантов дополнения много.

2. Все что объявляет в командной строке пользователь (и большинство встроенного) храниться в виде доступном для редактирования в любимом редакторе. имя_объекта <- edit(имя_объекта) позволяет переопределить.

3. Истории и поиск по ней как в bash.

Второй режим можно в принципе тоже вести «на коленке» просто вызывая тот же knitr() как команду с указанием что за фал надо пересобрать в отчет. Но естественно лучше пользоваться уже настроенной средой.

Например Rstudio, если знаком emacs то ess-mode в нём + куча уже встроенных режимов обслуживающих и работу с knitr и c языками разметки текстов.

psv1967 ★★★★★ ()

Какие возможности являются ключевыми:

1) Это базовые возможности R — поэтому так важно пройти официальное руководство, а не несколько страничек написанных в книжках «Регрессионный анализ для птцеловов Южного Уэлса в R». Пакеты с нужными специфическими методами не будут чаще всего содержать ничего кроме нескольких функций специфичных для метода, всё остальное (в качестве «клея») делает базовый R.

2) Средства манипулирования данными — reshape(2), (d)plyr, data.table надо обязательно посмотреть (например http://cran.r-project.org/web/packages/reshapeGUI/index.html)

3) Графические системы R --- базовая графика, lattice и в последнюю очередь (просто потому что Автор успеет переписать его ещё раз :) ) ggplot2.

psv1967 ★★★★★ ()
Ответ на: комментарий от psv1967

Огромное спасибо за советы! Не ожидал увидеть столько полезных советов! Огромное спасибо! Я только пытаюсь разобраться что это такое) Кстати, у меня есть ещё один вопрос. А что насчёт анализа моделей? Могу ли я использовать какие-то дополнительные пакеты для этих задач? Сейчас я использую IBM AMOS Graphics, однако самый большой минус в том, что оно только для Windows. Хотелось бы найти аналогичный пакет для Mac.

kirich ()
Ответ на: комментарий от kirich

В обзоре на cran читаем

«Structural Equation Models, Factor Analysis, PCA» в http://cran.r-project.org/web/views/Psychometrics.html по специальности.

Еще http://cran.r-project.org/web/views/Bayesian.html например bnlearn и книгу по нему.

Вот немного устаревший сурвей именно по графическим моделям http://cran.r-project.org/web/views/gR.html

psv1967 ★★★★★ ()

Спасибо! Очень хорошие советы. Буду курить это дело.

kirich ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.