Показать сообщение отдельно
Старый 11.11.2012, 15:55   #1
Hogfather
Platinum Member
 
Аватар для Hogfather
 
Регистрация: 22.07.2010
Адрес: Санкт-Петербург
Сообщений: 3,281
По умолчанию GNU R: Вопросы и ответы

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


Итак, поскольку я показал как пользоваться R для решения задачи подбора распределения, а добро не должно остаться безнаказанным, в личные сообщения посыпались вопросы. Чтобы два раза не вставать, ответы публикую сюда.

Рассмотрено в других темах (пример кода)

1. Подгонка распределения. fitdistr из MASS
2. Подгонка распределения. fitdist из fitdistrplus. Лучше!
3. Нелинейный метод наименьших квадратов
4. Гамма-распределение. Вывод графика.
5. Диаграмма "Ящик с усами" для нескольких векторов
6. Упрощение себе жизни с помощью написания функции в R
7. Подгонка МНК

Q: Где взять R?

A: Лучше всего в специально предназначенном для этого месте, называется CRAN. Русское зеркало находится вот тут. Выбираете операционную систему, далее скачиваете и устанавливаете.

Q:C чего начать?

A: Почитать статьи вот тут

Q: Как попробовать то, что показано в примерах?

A: Очень просто. Запускаем R, копируем команду из примера в консоль интерпретатора. Команды начинаются с ">", сам символ ">" приглашения интерпретатора R не копируем.
Например, скопируйте все строки из примера ниже (я оставил только команды из вышеприведенной заметки, а символ ">" стёр) и запустите в R (Не забудьте в конце нажать Enter, чтобы выполнилась последняя команда).
Код:
# Тестовый пример. Скопировать все строки и вставить в окно интерпретатора R
LT<-c(rep(1,9),rep(2,267),rep(3,2843),rep(4,5450),rep(5,6564),rep(6,7044),rep(7,7518),rep(8,7071),rep(9,5620),rep(10,4016),rep(11,2545),rep(12,1494),rep(13,854),rep(14,416),rep(15,214),rep(16,122),rep(17,53),rep(18,16),rep(19,7),rep(20,2),21,22)
summary(LT)
length(LT)
# строим график
old.par <- par(mfrow=c(2,2))
hist(LT,main="Распределение букв",ylab="Число наблюдений",xlab="Число букв")
hist(LT,freq=F,ylab="Вероятность",xlab="Число букв",main="Распределение букв")
plot(ecdf(LT),verticals=T,main="График функции распределения")
boxplot(LT,main="Диаграмма Ящик-с-Усами",xlab="Число букв",horizontal=T)
par(old.par)
Вот что получится в результате:


Q: Замечательно, получилось. А как теперь скопировать картинку?

A: В MS Windows -- правая кнопка мыши на рисунке и выбрать нужный Вам вариант. Более продвинутые способы рассмотрим позже.

Q: А как бы мне открыто новую картинку на экране, да не поверх предыдущей?

A: Воспользуйтесь командой windows()
Код:
>windows()
Можно задать размеры окна в дюймах и еще кучу всего. Подробнее в справке.
Код:
>?windows

Q: У меня не подключилась библиотека MASS.

A: Понимаю, нужно её установить. В меню "Пакеты" выберите "Установить пакеты", дальше разберетесь сами.

Q: Я ввел неверную команду или хочу повторить предыдущую, опять заново набивать надо?

A: Нет. Достаточно нажать стрелку вверх. Это позволит "путешествовать" по истории команд, а если проскочили лишнее, то стрелка вниз. Далее можно редактировать строку. Потом нажмите Enter и она выполнится. Либо наберите команду history(), в отдельном окне покажется список последних введенных команд (25 штук). Если нужно больше, то поставьте соответствующую цифру в скобках, например history(100). Из открывшегося окна можно копировать нужные команды.

Последний раз редактировалось Hogfather; 06.12.2012 в 08:32.
---------
DNF is not an option
Hogfather вне форума   Ответить с цитированием
Реклама