Язык программирования R/Настройки

Материал из Викиучебника — открытых книг для открытого мира
Перейти к навигации Перейти к поиску

Установка [1][править]

Linux[править]

Debian-like[править]

Установка R на Debian-базированный дистрибутив GNU/Linux (такой как Ubuntu или сам Debian) заключается в выполнении команды от имени root: aptitude install r-base; или установке пакета r-base используя ваш любимый менеджер пакетов, например Synaptic.

Также существуют обширный набор пакетов, расширяющий возможности R. Их имена начинаются с r-. Обратите внимание на пакет r-recommended. Это мета-пакет, который "подтягивает" по зависимостям целую коллекцию пакетов, рекомендованных базовой командой разработки R как часть цельного дистрибутива R. Возможно установить R, используя только этот пакет, так как он зависит от r-base.

Gentoo[править]

В Gentoo базовый пакет называется dev-lang/R. Он может быть модифицирован следующими USE флагами:

X               : Добавляет поддержку X11
bash-completion : Включает автодополнение bash-completion
cairo           : Включает поддержку графической библиотеки cairo
doc             : Добавляет дополнительную документацию (API, Javadoc и так далее)
java            : Добавляет поддержку Java
jpeg            : Добавляет поддержку изображений JPEG
lapack          : Добавляет поддержку численной библиотеки lapack
minimal         : Устанавливает минимизированный вариант (например, отключает плагины, шрифты
                  большинство драйверов и некритичных возможностей)
nls             : Добавляет языковую поддержку (используя gettext - утилиты локализации GNU)
perl            : Добавляет поддержку/связки с Perl
png             : Добавляет поддержку изображений PNG (libpng)
readline        : Добавляет поддержку libreadline, библиотека редактирования консольных
                  строчек GNU (даже не сомневайтесь, вам это нужно)
threads         : Добавляет поддержку нитей (многопоточные вычисления)
tk              : Добавляет поддержку Tk GUI

Обычно, USE флаги, достаточно разумно, включаются самостоятельно (исходя из установленного ПО), так что процесс установки R сводится к:

# emerge -a dev-lang/R

После установки со всеми USE флагами, кроме minimal, в R установлены следующие пакеты-расширения:

Пакеты в библиотеке '/usr/lib/R/library':

base        : Базовый пакет R
boot        : Bootstrap R (S-Plus) функции (Canty)
class       : Функции для классификации
cluster     : Кластерное аналитическое расширение Rousseeuw
codetools   : Утилиты анализа кода для R
datasets    : Пакет наборов данных R
foreign     : Чтение данных сохранённых Minitab, S, SAS, SPSS, Stata, Systat, dBase, ...
graphics    : Графический пакет R
grDevices   : Графические устройства R и поддержка цветов и шрифтов
grid        : Сетчатый графический пакет
KernSmooth  : Функции ядерного сглаживания для Wand & Jones (1995)
lattice     : Решётчатая графика
MASS        : Главный пакет MASS Venables и Ripley's
Matrix      : Матричные методы и классы Sparse и Dense
methods     : Стандартные методы и классы
mgcv        : GAM-ы с GCV/AIC/REML для гладких прогнозов и GAMM-ы PQL
nlme        : Линейные и нелинейные модели смешанных эффектов
nnet        : Нейронные сети Feed-forward и многочленные логарифм-линейные модели
rpart       : Рекурсивное разделение
spatial     : Функции для интерполяции (Kriging) и точечно-шаблонного анализа
splines     : Функции и классы для сплайна регрессий
stats       : Пакет статистики для R
stats4      : Статистические функции, использующие классы S4
survival    : Анализ выживания, включая вероятности штрафов.
tcltk       : Интерфейс к Tcl/Tk
tools       : Утилиты для разработки пакетов
utils       : Пакет утилит R

Также рекомендую обратить внимание на пакет sci-mathematics/rkward, который предоставляет удобный графический редактор для работы с R.

Поддержка Python вынесена в отдельный пакет dev-python/rpy.

Mac OS[править]

  • The Graphical User Interface for Mac has some nice utilities :
    • a dataframe managers
    • an history of all commands
    • a program editor with syntax highlighting

Windows[править]

Download[править]

To install R under Windows operating system you have to download the binaries from the web. First go to r-project.org and click CRAN under download section on the left panel and select a mirror site, from where you could download the required content. The best idea is pick a mirror closest to your actual geographical location, but other ones should work as well. The click Windows and in subdirectories base. The windows binary is the exe file, in form R-x.x.x-win32.exe, where x denotes the actual version of the program. Regardless of the version the setup has the same steps.

Setup[править]

Selecting components at the beginning
The final step

As usually in Windows, if you click just the Next button, you will install the program without any problems. There are few things, that you can alter however.

  1. On the welcome screen click Next.
  2. Read or just notice the GNU license, and click Next.
  3. Select the location, where R should be installed. In case you don't prefer a particular location on your hard disc, the default choice will be OK for you.
  4. During the next step you can specify which parts of R you want to install. Choices are: User installation, Minimal user installation, Full installation and Custom installation. Notice the required space under the selection panel (varies between 20 and 66 MB). In case you are a beginner in R, choose the default User installation.
  5. In this step you can choose between 2 ways. If you accept defaults, you skip the 3 "extra" steps during installation (see lower).
  6. You can specify the Start menu folder.
  7. In the next step you can choose, between shortcut possibilities (desktop icon and/or quick launch icon) and specify registry entries.

Extra steps:
With these steps you can customize the R graphic user interface.

  • You can choose if you want an R graphic user interface covering the whole screen (MDI) or a smaller window (SDI).
  • You can select the style, how the Help screen is displayed in R. You will use help a lot, so this may be an important decision. It is up to you, which style you prefer. Please note, that the content of help file will be the same regardless of your choice. Here you specify just the appearance of that particular window.
  • In the next step you can specify, whether you want to use internet2.dll. If you are a beginner, pick the Standard option here.

Screenshots[править]

The 3 extra steps:

Portable R for Windows[править]

  • Note that you have a portable version if you want to install R on your USB stick ([1]).
  • fr R portable version

Web-based версия[править]

Существуют проекты, давшие возможность использовать R в сети. Если вам интересно, то обратите внимание на Rpad (ссылка(англ.)), RCloud (ссылка(англ.)) и расширение R для движка MediaWiki (ссылка(англ.)).

Текстовые редакторы и графические интерфейсы пользователя[править]

  • Графические интерфейсы пользователя:
    • Jaguar: Java GUI для R[2]
    • Rcommander: [3] разработанный Джоном Фоксом (John Fox) предоставляет меню в стандартном GUI.
    • Rattle: [4] для Linux, Windows и Mac
    • RKwad: [5] графический интерфейс пользователя для Linux на базе Kate.
    • RpyGTK: был обещан (ссылка(англ.) и скриншоты(англ.)).
  • Родные текстовые редакторы в стандартном Windows GUI не поддерживающие подсветку кода:
    • Notepad++[6] and NPPtoR[7] provides syntax highlighting and hotkeys (by default F8) to send lines of code to R. Syntax highlighting can be easily modified using the dialog box to manage user define languages (Menu/View/Use Define Dialog...). NPPtoR provides a method to generate syntax highlighting dynamically (depending on all the available packages in the R environment).
    • Tinn R[8] is a good solution to this problem and is very easy to install. One can easily define keyboard shortcuts to execute selected R code from Tinn R.
    • How to use R for Windows with the RWinEdt extension ? by Andy Eggers[9]
  • Универсальные текстовые редакторы:
    • Vim и GVim поддерживают подсветку кода.
    • Emacs с ESS (Emacs Speaks Statistics)[10].
      • Смотри документ(англ.) Джона Фокса (John Fox) о Emacs и ESS
  • The native Mac OS graphical user interface provides syntax highlighting. So there is no specific need for external text-editor. However, you can use any text editor. Smultron(англ.) is a very popular and easy to use text editor for mac os 10. Vim and Emacs are also available.

Опции[править]

Функция options() без аргументов выводит список всех опций.

> options()

Память[править]

memory.size() возвращает полный объём памяти, которую, на данный момент, использует R.

> memory.size()
[1] 10.18

memory.limit() без аргументов возвращает предел объёма памяти используемой R. С помощью этой функции можно увеличить лимит. Максимальный объём памяти, который может быть использован, ограничен только возможностями компьютера.

> memory.limit()
[1] 1535
>  memory.limit(size=2000) # 2000 обозначает 2000MB
[1] 2000

object.size() возвращает размер объекта R. Вы также можете вывести результат, указав требуемые единицы измерения (байты, килобайты, мегабайты, и так далее).

> a <- rnorm(10^7)
> object.size(a)
80000024 bytes
> print(object.size(a),units="b")
80000024 bytes
> print(object.size(a),units="Kb")
78125 Kb
> print(object.size(a),units="Mb")
76.3 Mb
> print(object.size(a),units="Gb")
0.1 Gb
> print(object.size(a),units="auto")
76.3 Mb

memory.profile() возвращает больше деталей.

> memory.profile()
       NULL      symbol    pairlist     closure environment     promise 
          1        4959       61794        1684         255        3808 
   language     special     builtin        char     logical     integer 
      14253          46         687        5577        2889        4060 
     double     complex   character         ...         any        list 
        523           1       11503           0           0        1024 
 expression    bytecode externalptr     weakref         raw          S4 
          1           0         497         117         118         642 

Возможности[править]

  • Revolution Computing[11] разработали 64-битную версию R с возможностями кластеризации.

Пакеты[править]

Библиотеки и пакеты R включают набор функций и примеров. Обычно, пакеты разрабатываются как приложения к книгам. Например, пакет MASS был разработан Venables и Ripley для их книги "Современная прикладная статистика с S" ("Modern Applied Statistics with S"), а car разработан Джоном Фоксом (John Fox) для его книги "R и S плюс спутник для прикладных регрессий" ("An R and S plus Companion to Applied Regression").

Загрузка пакета[править]

Любой может загрузить библиотеку R, используя функцию library(). Если вы хотите узнать список функций и набора данных включённых в библиотеку, достаточно, всего-лишь, использовать агрумент h или help для функции library().

library("stats4") # Загружаем пакет "stats4"
library(h=stats4) # Получаем справку по всем функциям
data(package="stats4") # Получаем список всех доступных наборов данных

Вы можете "отсоединить" (убрать из области видимости) пакет, используя функцию detach():

> detach("package:prettyR")

Без аргументов, функция library() возвращает список всех пакетов R доступных на компьютере. env() (gdata) описывает все загруженные окружения (пакеты). search() выводит список всех областей видимости.

> library() # Возвращает описания всех доступных пакетов R в системе
> dir(.libPaths()) # Тоже возвращает имена всех доступных пакетов R в системе, но работает быстрее
> search()
> env(unit="MB")

current.packages() (Zelig) Отображает все зависимые и подразумеваемые пакеты.

> current.packages("sem")

Где находится мой пакет?

  • Функция .libPaths() без аргументов выводит список библиотечных дирректорий.
  • Функция .libPaths() с дирректорией в качестве аргумента определяет новый путь до пакетов.
> .libPaths()
[1] "/Users/username/Library/R/library"    
[2] "/Library/Frameworks/R.framework/Resources/library"
> .libPaths("W:/AppData/R/library")

Установка нового пакета[править]

  • Исчерпывающий список доступных пакетов находится на сайте CRAN(англ.).
  • Чтобы установить новый пакет, достаточно указать имя пакета как аргумент функции install.packages().
  • Иногда необходимо указать больше опций. Например, если вы не администратор компьютера:
    • Опция "lib" указывает дирректорию, где вы хотите сохранить пакет.
    • Опция "repos" указывает список репозиториев. Имейте ввиду, что вы можете указать вектор репозиториев.
    • Опция "dep=TRUE" указывает, что все зависимости также должны быть загружены и установлены.
> install.packages("faraway")
> install.packages("rgrs", lib="W:/AppData/R/library" , 
repos=c("http://r-forge.r-project.org","http://cran.fr.r-project.org/"), 
dep=TRUE)
  • Не забывайте обновляться.

Если вы хотите использовать новейшие версии пакетов, наберите new.packages() в консоли R или посетите Revolution Computing Blog(англ.), который ежемесячно публикует список новых пакетов и обновлений.

> new.packages() # Выводит список всех пакетов, доступных в репозитории
> update.packages() # Обновляет все установленные пакеты новейшими версиями, доступными в репозитории
  • Удалить пакет можно с помощью remove.packages().

"Виды задач" (CRAN Task Views - ctv)[править]

Также можно устанавливать "связки" пакетов "укомплектованные" по типу выполняемых задач. Полный список видов можно посмотреть на странице CRAN Task Views(англ.). Что бы задействовать функционал нужно установить пакет ctv и включить его в область видимости:

> install.packages("ctv")
> library("ctv")

Используя функции install.views() или update.views() можно установить или обновить, указанный в качестве аргумента, вид. Указанные функции, также, могут принимать вектора названий видов:

> install.views(с("Econometrics", "ChemPhys")) # Устанавливаем виды задач "Эконометрика" и
                                                 "Химометрика и вычислительная физика"
> update.views("Econometrics") # Обновляем вид "Эконометрика"

Удалить вид можно с помощью remove.views().

Создание пакетов[править]

Вы также можете создавать свои собственные пакеты. Ознакомьтесь с инструкцией от Фредерика Лисча (Friedrich Leisch) (PDF(англ.) 20 страниц)[12]

Ссылки[править]

  1. Эта секция импортирована из проекта Wikiversity http://en.wikiversity.org/wiki/How_to_use_R/Installation (англ.)
  2. http://jgr.markushelbig.org/JGR.html(англ.)
  3. http://socserv.mcmaster.ca/jfox/Misc/Rcmdr/(англ.)
  4. http://rattle.togaware.com/(англ.)
  5. RKwad http://rkward.sourceforge.net/(англ.)
  6. Note that Notepad++ can be installed on a USB stick http://sourceforge.net/projects/notepadpluspe/(англ.)
  7. NPPtoR is also a portable software http://sourceforge.net/projects/npptor/(англ.)
  8. Tinn stands for Tinn Is Not Notepad http://www.sciviews.org/Tinn-R/(англ.)
  9. http://www.people.fas.harvard.edu/~aeggers/RWinEdt_installation.pdf(англ.)
  10. ESS : http://ess.r-project.org/(англ.)
  11. http://www.revolution-computing.com/
  12. Friedrich Leisch Creating R Packages : A Tutorial http://cran.r-project.org/doc/contrib/Leisch-CreatingPackages.pdf(англ.)