Как проще всего запустить rstudio в операционной системе windows

R programming language is a language and free software environment available under GNU license supported by R Foundation for Statistical Computing. The language is most widely known for its powerful statistical and data interpretation capabilities. To use R language you need the R environment to be installed on your machine

R programming language is a language and free software environment, available under GNU license, supported by R Foundation for Statistical Computing. The language is most widely known for its powerful statistical and data interpretation capabilities. 

To use R language, you need the R environment to be installed on your machine, and an IDE (Integrated development environment) to run the language (can also be run using CMD on Windows or Terminal on Linux). 

Why use R Studio?  

  • It is a powerful IDE, specifically used for the R language.
  • Provides literate programming tools, which basically allow the use of R scripts, outputs, text, and images into reports, Word documents, and even an HTML file.
  • The use of Shiny (open-source R package) allows us to create interactive content in reports and presentations.

Installing R Studio on Window

To Install R Studio on windows we will follow the following steps.

Step 1: First, you need to set up an R environment in your local machine. You can download the same from r-project.org. 

Step 2: After downloading R for the Windows platform, install it by double-clicking it.  

Installing R for Windows platform.

Step 3: Download R Studio from their official page. Note: It is free of cost (under AGPL licensing).  

Downloading R Studio for Windows.

Step 4: After downloading, you will get a file named “RStudio-1.x.xxxx.exe” in your Downloads folder. 

Step 5: Double-click the installer, and install the software. 

Step 6: Test the R Studio installation  

  • Search for RStudio in the Window search bar on Taskbar.

  • Start the application.
  • Insert the following code in the console.
Input  : print('Hello world!') 
Output : [1] "Hello world!"

R console on Windows.

Step 7: Your installation is successful.  

Installing R Studio on Ubuntu

Installing R Studio on Ubuntu has steps similar to Windows: 

Through Terminal 

Step 1: Open terminal (Ctrl+Alt+T) in Ubuntu.

Step 2: Update the package’s cache. 

sudo apt-get update

Step 3: Install R environment. 

sudo apt -y install r-base

Check for the version of R package using

R --version

Step 4: Check R installation by using the following command. 

user@Ubuntu:~$ R 

(Note that R version should be 3.6+ to be able to install all packages like tm, e1071, etc.). If there is issue with R version, see the end of the post. 

Step 5: Exit the terminal.

Through Ubuntu software Center 

Step 1: Open Ubuntu Software Center.

Step 2: Search for r-base.

Step 3: Click install. 

Install Rstudio on Ubuntu  

Step 1: Install gdebi package to install .deb packages easily.

sudo add-apt-repository universe
sudo apt-get install gdebi-core

Step 2: Go to R Studio downloads and select the latest *.deb package available under Ubuntu 18/Debian 10.

Step 3: Navigate to the Downloads folder in the local machine.

$ cd Downloads/
$ ls
 rstudio-1.2.5042-amd64.deb

Step 4: Install using gdebi package.

sudo gdebi rstudio-1.2.5042-amd64.deb

Step 5: Run the RStudio using Terminal

user@Ubuntu:~/Downloads/ $ rstudio 

Alternatively, use the menu to search for Rstudio.

Step 6: Test the R Studio using the basic “Hello world!” command and exit.

Input  : print('Hello world!') 
Output : [1] "Hello world!"

Alternatively, RStudio can be installed through Ubuntu Software as well, but using the above approach generally guarantees the latest version is installed. 

If there are issues with the R version getting downloaded or the previously installed version is older, check R version with 

R --version

Now, Run the following commands in Terminal (Ctrl + Alt + T)  

Add the key to secure APT from the CRAN package list:

sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9

Add the latest CRAN repository to the repository list. (This is for Ubuntu 18.04 specifically):

sudo add-apt-repository ‘deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/’

Update the package cache:

sudo apt update

Install the r-base package:

sudo apt install r-base

R programming language is a language and free software environment, available under GNU license, supported by R Foundation for Statistical Computing. The language is most widely known for its powerful statistical and data interpretation capabilities. 

To use R language, you need the R environment to be installed on your machine, and an IDE (Integrated development environment) to run the language (can also be run using CMD on Windows or Terminal on Linux). 

Why use R Studio?  

  • It is a powerful IDE, specifically used for the R language.
  • Provides literate programming tools, which basically allow the use of R scripts, outputs, text, and images into reports, Word documents, and even an HTML file.
  • The use of Shiny (open-source R package) allows us to create interactive content in reports and presentations.

Installing R Studio on Window

To Install R Studio on windows we will follow the following steps.

Step 1: First, you need to set up an R environment in your local machine. You can download the same from r-project.org. 

Step 2: After downloading R for the Windows platform, install it by double-clicking it.  

Installing R for Windows platform.

Step 3: Download R Studio from their official page. Note: It is free of cost (under AGPL licensing).  

Downloading R Studio for Windows.

Step 4: After downloading, you will get a file named “RStudio-1.x.xxxx.exe” in your Downloads folder. 

Step 5: Double-click the installer, and install the software. 

Step 6: Test the R Studio installation  

  • Search for RStudio in the Window search bar on Taskbar.

  • Start the application.
  • Insert the following code in the console.
Input  : print('Hello world!') 
Output : [1] "Hello world!"

R console on Windows.

Step 7: Your installation is successful.  

Installing R Studio on Ubuntu

Installing R Studio on Ubuntu has steps similar to Windows: 

Through Terminal 

Step 1: Open terminal (Ctrl+Alt+T) in Ubuntu.

Step 2: Update the package’s cache. 

sudo apt-get update

Step 3: Install R environment. 

sudo apt -y install r-base

Check for the version of R package using

R --version

Step 4: Check R installation by using the following command. 

user@Ubuntu:~$ R 

(Note that R version should be 3.6+ to be able to install all packages like tm, e1071, etc.). If there is issue with R version, see the end of the post. 

Step 5: Exit the terminal.

Through Ubuntu software Center 

Step 1: Open Ubuntu Software Center.

Step 2: Search for r-base.

Step 3: Click install. 

Install Rstudio on Ubuntu  

Step 1: Install gdebi package to install .deb packages easily.

sudo add-apt-repository universe
sudo apt-get install gdebi-core

Step 2: Go to R Studio downloads and select the latest *.deb package available under Ubuntu 18/Debian 10.

Step 3: Navigate to the Downloads folder in the local machine.

$ cd Downloads/
$ ls
 rstudio-1.2.5042-amd64.deb

Step 4: Install using gdebi package.

sudo gdebi rstudio-1.2.5042-amd64.deb

Step 5: Run the RStudio using Terminal

user@Ubuntu:~/Downloads/ $ rstudio 

Alternatively, use the menu to search for Rstudio.

Step 6: Test the R Studio using the basic “Hello world!” command and exit.

Input  : print('Hello world!') 
Output : [1] "Hello world!"

Alternatively, RStudio can be installed through Ubuntu Software as well, but using the above approach generally guarantees the latest version is installed. 

If there are issues with the R version getting downloaded or the previously installed version is older, check R version with 

R --version

Now, Run the following commands in Terminal (Ctrl + Alt + T)  

Add the key to secure APT from the CRAN package list:

sudo apt-key adv –keyserver keyserver.ubuntu.com –recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9

Add the latest CRAN repository to the repository list. (This is for Ubuntu 18.04 specifically):

sudo add-apt-repository ‘deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/’

Update the package cache:

sudo apt update

Install the r-base package:

sudo apt install r-base

Перевод инструкции с DataCamp

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

R — один из основных языков используемых сегодня в науке о данных. Поэтому любой, кому интересна эта сфера, может захотеть узнать, как начать пользоваться R вне зависимости от операционной системы, установленной на компьютере. Это руководство поможет установить R на Windows 10, Mac OS X и Ubuntu Linux.

Кроме того, в руководстве рассматриваются установка RStudio, мощной IDE (Integrated Development Environment, интегрированная среда разработки), упрощающей программирование на R, и установка пакетов для R, таких как dplyr или ggplot2.

С установкой R на Windows 10 нет никаких сложностей. Самый простой способ — установить его через CRAN (расшифровывается как The Comprehensive R Archive Network). Перейдите на страницу загрузок CRAN и проследуйте по ссылкам из анимации ниже:

Как только загрузка будет завершена, вы найдёте у себя файл под названием «R-3.6.3-win.exe» (либо похожим — в зависимости от номера версии R, которую вы скачаете). Ссылки в анимации выше помогут вам скачать самую актуальную версию. Всё, что осталось сделать для завершения установки R, это запустить загруженный exe-файл. По большей части, вам нужно просто соглашаться с опциями по умолчанию, так что просто нажимаете кнопку «Next» до завершения установки, как показано в следующей анимации. Обратите внимание, что на одном из экранов можно добавить иконки для вызова R через панель быстрого доступа и с рабочего стола (в анимации выбрана опция «Не добавлять».

Установка RStudio

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

Когда загрузка закончится, вы получите файл «RStudio-1.2.5033.exe», или с похожим названием — снова, в зависимости от версии. Запустите его, согласитесь с предлагаемыми по умолчанию настройками, нажимая кнопку «Next» и дождитесь окончания установки — как и в прошлый раз. Помните, что перед установкой RStudio необходимо установить R!

Установка пакетов в R

У вас уже установлены R и отличная IDE — можно начинать программировать. Однако, базовая версия R очень ограничена в возможностях, поэтому сообщество пользуется дополнительными пакетами, расширяющими функционал языка, такими как dplyr (расширяет возможности обработки данных) или ggplot2 (предоставляет улучшенные инструменты для визуализации). Есть два способа установки пакетов для R через RStudio. Первый — выполнить следующий код в консоли:

install.packages(c("dplyr","ggplot2"))

Второй способ показан в анимации ниже. Это лёгкий в использовании графический интерфейс, встроенный в RStudio, благодаря которому вы сможете найти и загрузить любой пакет для R, доступный в CRAN.

Установка R на Mac OS X

Процесс установки R на Mac OS почти не отличается от установки на Windows. Снова, самый простой способ — загрузить установщик со страницы загрузок CRAN:

Следующий шаг — запуск файла «R-3.6.2.pkg» (или более новой версии). Также, как и в Windows, можно оставить все опции по умолчанию.

Установка RStudio и пакетов R

В обоих случаях отличий от установки в Windows нет. Для загрузки RStudio перейдите на страницу загрузки и скачайте файл с расширением .dmg для Mac OS (как на картинке ниже). Оставляйте выборы по умолчанию.

Откройте RStudio. Установка пакетов проходит также, как в Windows. Можно ввести в консоль команду

install.packages(c("dplyr","ggplot2"))

или воспользоваться графическим интерфейсом, показанным в части «Установка пакетов в R» этого руководства.

Установка R в Ubuntu 19.04/18.04/16.04

Установка R в Ubuntu может быть несколько более сложной для тех, кто не привык работать в командной строке (консоли). Тем не менее, это практически также просто, как и в случаях с Windows или Mac OS. Прежде чем начать, убедитесь, что у вас есть права уровня root, позволяющие пользоваться sudo.

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

sudo apt update
sudo apt -y upgrade

После этого, всё, что необходимо сделать для установки R — выполнить в консоли следующую команду:

sudo apt -y install r-base

Установка RStudio и пакетов R

Когда базовый R установлен, вы можете установить RStudio. Переходим на страницу загрузок, выбираем .deb файл для нашей версии Ubuntu, как на картинке ниже:

Когда вы скачали .deb файл, всё, что осталось сделать, это перейти в папку с загрузками, воспользовавшись командой

cd Downloads

и запустить оттуда процесс установки командой

sudo dpkg -i rstudio-1.2.5033-amd64.deb

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

sudo apt -f install

Когда установка закончится, иконка RStudio появится в списке приложений в Ubuntu, но вы также сможете запустить программу набрав rstudio в консоли.

В запущенной RStudio установка пакетов происходит ровно также, как в Windows или Mac OS. Либо введите

install.packages(c("dplyr","ggplot2"))

либо воспользуйтесь графическим интерфейсом, как показано в части «Установка пакетов в R» этого руководства.

Заключение

Я надеюсь, что это руководство поможет тем из вас, кто желает погрузиться в мир программирования на R вне зависимости от операционной системы, которой вы пользуетесь. Если вам интересно узнать о возможностях языка, воспользуйтесь курсом Введение в R от DataCamp, который познакомит вас с основами. Продолжайте учиться, нет предела совершенству!

  • Пошаговая установка R для windows
  • Пошаговая установка R для macos
  • Пошаговая установка R для linux (на примере Ubuntu)
  1. Если Windows только-только поставлена, то, пожалуйста, создайте пользователя с логином английскими буквами и работайте из под него.

Например, имя пользователя “Mashenka” подходит, а “Машенька” не подходит. Английское имя сильно облегчит жизнь в дальнейшем :) Проблема в том, что при взаимодействии Rstudio — R могут возникать проблемы, если в названии папки есть русские буквы, а у “Машеньки” путь к документам выглядит как “C:/Users/Машенька/”.

Если компьютер давно используется с логином русскими буквами (“Машенька”), то оставляйте как есть, но:

При установке внимательно следите, что все программы ставятся в папки не содержащие русских букв. Мы рекомендуем поставить R в папку `C:/R`, а Rstudio в папку `C:/Rstudio`.
  1. На время установки отключите антивирус.

Нет, мы не хотим подсунуть слушателям хитрый троянский вирус :) Просто встречались с проблемами при установке, если антивирус включён.

  1. Установите классический R для windows.

Тем, кто уже знаком с R и не боится повозиться самостоятельно, мы советуем попробовать вместо классического R поставить MRO, Microsoft R Open. Это другой дистрибутив R, оптимизированный под работу с 64-битными процессорами. Всё полностью идентично, кроме двух нюансов: во-первых, MRO немного быстрее, во-вторых, MRO ставит все пакеты на единую дату, выбираемую пользователем, а классический R ставит самые свежие версии пакетов.

  1. Установите RStudio.

Rstudio — это всего лишь удобная красивая графическая оболочка к R. Суровые брутальные программисты могут вполне обойтись и без Rstudio :) Не спутайте Rstudio с R-studio, платной программой для восстановления данных.

  1. Настройте Rstudio.

Запустите RStudio. Зайдите в раздел Tools — Global options.

В разделе General:

* уберите галочку у Restore .Rdata into workspace in startup.
* выберите `Never` у Save workspace to .Rdata on exit

В разделе Sweave:

* "Weave .Rnw files using" выберите knitr.

В разделе Code — Diagnostics:

* выставьте все галочки.

  1. Установите свежую версию Rtools.

Это дополнительные программы, которые позволяют нам, в частности, из R создавать экселевские файлы.

  1. Шаг только для windows. Если имя пользователя windows набрано русскими буквами, а создавать нового никак не хочется!

7.1. Создайте папку для установки пакетов без русских букв и пробелов, например, C:/Rlib.

7.2. Создайте папку для временных файлов без русских букв и пробелов, например, C:/Temp.

7.3. Выполните в консоли Rstudio команду

system("setx R_LIBS C:/Rlib")
system("setx TEMP C:/Temp")
system("setx TMP C:/Temp")

Вместо C:/Rlib должно быть имя папки созданной для установки пакетов.

Вместо C:/Temp должно быть имя папки созданной для временных файлов.

7.4. Перезапустите Rstudio

7.5. Проверьте, что R знает, куда ему ставить пакеты. Для этого выполните в консоли Rstudio команду

.libPaths()

Она должна указать путь к папке C:/Rlib. После этого все пакеты будут ставиться в папку C:/Rlib.

  1. Установите все необходимые для курса пакеты R.

Скачайте файл install_all.R. Откройте его в RStudio (FileOpen file).

Если русские буквы видны как кракозябры, то после открытия файла выберите FileReopen with Encoding...UTF-8 и отметьте внизу галочку Set as default for source files.

Запустите скрипт, инсталлирующий пакеты, выбрав CodeSource with Echo. При этом требуется соединение с Интернетом.

При установке может встретиться вопрос: “Do you want to install from sources the packages which need compilation?”

Следует ответить “Нет”!

Причина: некоторые пакеты содержат код C++ и для установки из исходников (source) требуют наличия и корректной настройки компилятора C++ на компьютере. При ответе “Нет” будут скачаны уже заранее скомпилированые пакеты.

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

  1. Не забудьте включить обратно антивирус :)

Пошаговая установка R для macos

  1. Установите классический R для macos.

Тем, кто уже хорошо знаком с R и не боится повозиться самостоятельно, мы советуем попробовать вместо классического R поставить MRO, Microsoft R Open. Это другой дистрибутив R, оптимизированный под работу с 64-битными процессорами. Всё полностью идентично, кроме двух нюансов: во-первых, MRO немного быстрее, во-вторых, MRO ставит все пакеты на единую дату, выбираемую пользователем, а классический R ставит самые свежие версии пакетов.

  1. Установите RStudio.

Rstudio — это всего лишь удобная красивая графическая оболочка к R. Суровые брутальные программисты могут вполне обойтись и без Rstudio :) Не спутайте Rstudio с R-studio, платной программой для восстановления данных.

  1. Запустите RStudio.

При первом запуске Rstudio может появится сообщение о необходимости установки Xcode command line tools (инструменты командной строки для разработчиков). Их нужно установить.

  1. Настройте Rstudio. Зайдите в раздел Tools — Global options.

В разделе General:

* уберите галочку у Restore .Rdata into workspace in startup.
* выберите `Never` у Save workspace to .Rdata on exit

В разделе Sweave:

* "Weave .Rnw files using" выберите knitr.

В разделе Code — Diagnostics:

* выставьте все галочки.

  1. Шаг только для Macos. Выполните в консоли Rstudio команду
system("defaults write org.R-project.R force.LANG en_US.UTF-8")

Это позволит избежать потенциальных проблем с изображением кириллицы на компьютерах, где не срабатывает автоматическое определение настроек.

  1. Установите все необходимые для курса пакеты R.

Скачайте файл install_all.R. Откройте его в RStudio (FileOpen file). Запустите, выбрав CodeSource with Echo. При этом требуется соединение с Интернетом.

При установке может встретиться вопрос: “Do you want to install from sources the packages which need compilation?”

Следует ответить “Нет”!

Причина: некоторые пакеты содержат код C++ и для установки из исходников (source) требуют наличия и корректной настройки компилятора C++ на компьютере. При ответе “Нет” будут скачаны уже заранее скомпилированые пакеты.

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

Пошаговая установка R для linux (на примере Ubuntu)

  1. Добавьте официальный репозиторий R:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys E298A3A825C0D65DFD57CBB651716619E084DAB9
sudo add-apt-repository 'deb https://cloud.r-project.org/bin/linux/ubuntu bionic-cran35/'
sudo apt update

Вместо bionic (для 18.04) должно быть кодовое название версии Ubuntu (disco для 19.04)

  1. Установите классический R:
sudo apt-get install r-base r-base-dev
  1. Установите RStudio.

Rstudio — это всего лишь удобная красивая графическая оболочка к R. Суровые брутальные программисты могут вполне обойтись и без Rstudio :) Не спутайте Rstudio с R-studio, платной программой для восстановления данных.

  1. Настройте Rstudio.

Запустите RStudio. Зайдите в раздел Tools — Global options.

В разделе General:

* уберите галочку у Restore .Rdata into workspace in startup.
* выберите `Never` у Save workspace to .Rdata on exit

В разделе Sweave:

* "Weave .Rnw files using" выберите knitr.

В разделе Code — Diagnostics:

* выставьте все галочки.

  1. Для пакетов R, скачивающих данные из Интернета, может потребоваться установка дополнительных библиотек linux
sudo apt-get install libcurl4-openssl-dev libxml2-dev libssl-dev
  1. Установите все необходимые для курса пакеты R.

Скачайте файл install_all.R. Откройте его в RStudio (FileOpen file). Запустите, выбрав CodeSource with Echo. При этом требуется соединение с Интернетом.

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

Примечания:

  1. На ubuntu Rstudio узнает содержимое переменной PATH из файла etc/environ. Поэтому если в этом файле в переменной PATH нет пути к латеху, то Rstudio не увидит латех. Достаточно добавить путь к латеху в этом файле :)

Программы на R пишутся в специальном, заточенном под программирование, редакторе, который обладает бОльшими, чем обычный редактор, возможностями. Вообще такие навороченные редакторы называются по англ. IDE (Integrated Development Environment), а по-русски просто средой, или более полно — средой программирования. Мы будем использовать в качестве IDE RStudio — её нужно будет скачать и установить. Кроме RStudio нужно будет скачать и установить саму программу R. Итого нам нужно установить:

  1. RStudio
  2. R

Ниже рассмотрим как это сделать в разных ОС. Хотя версии в примерах устарели, алгоритм установки не изменился: нужно просто использовать последние номера-версии.

Установка в Windows

Рассмотрим шаги по установке среды R (RStudio + R):

  1. Скачать RStudio (на момент написания это версия 0.97.551).
  2. Скачать R (на момент написания это Portable версия 3.0.2).
  3. Распаковать файл RStudio-0.97.551.zip в папку c:SoftRStudio (вместо c:Soft можно использовать любую удобную вам папку).
  4. Установить R в папку c:SoftR (вместо c:Soft можно использовать любую удобную вам папку).
  5. Сделать ярлык или bat-файл для запуска RStudio, он должен указывать на  c:SoftRStudiobinrstudio.exe
  6. Запустить RStudio, при первом запуске нужно указать путь к папке c:SoftRAppR-Portablebin.
  7. После этого можно проверить, что все работает как нужно, введя в окне Console (см. рисунок):
    help()
    

    Чтобы увидеть результат, нужно нажать Enter.

Установка в Red Hat/Fedora/CentOS

В процессе написания…

Установка в Debian/Ubuntu

В процессе написания…

Установка в Arch Linux

В процессе написания…

Любой Linux (компиляция из исходников)

fileName=$(curl -fsSL https://cran.rstudio.com/banner.shtml | egrep --color -o 'R-[[:digit:]]+.[[:digit:]]+.[[:digit:]].tar.gz' | head -1)
curl -fsSL https://cran.rstudio.com/src/base/R-3/$fileName
tar xzf $fileName
cd $(basename $fileName .tar.gz)
./configure --prefix=/opt/r
make
sudo make install

Установка в Mac OS X

В процессе написания…

Первые шаги {#first_steps}

Поехали!

Алексей Гагарин

Установка софта {#installation}

Казалось бы, чего проще — поставить программу?! Однако не всегда всё идёт
гладко, поэтому подробности в студию:

Россия — родина слонов {#russia}

В России проблем не две, как думают многие, а три: дураки, дороги и русские буквы в именах файлов. Самая распространённая проблема, с которой мне доводилось бороться не один раз, — это русские буквы и пробелы в названиях файлов и папок под
Windows.

Если ты используешь Windows, то никогда при серьёзной работе не используй русские буквы и пробелы в названиях файлов и папок.

Папку с котиками можно оставить под названием мои котики :)

Заповедь о русских буквах легко нарушить даже не осознавая этого. Если имя пользователя Windows написано русскими буквами, например, Машенька, то по умолчанию все документы этого пользователя будут находиться в папке C:/Users/Машенька/Documents/.

Для серьёзной работы под Windows нужно создать нового пользователя с английским именем, например, Mashenka.

Переименование старого пользователя не помогает, проверено. После создания нового пользователя можно перенести документы из старой папке C:/Users/Машенька/Documents/ в новую C:/Users/Mashenka/Documents/.

Правильное имя пользователя без пробелов и русских букв значительно снижает риск дальнейших проблем.

Набор легковооружённого кавалериста {#light_setup}

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

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

R {#install_R}

Устанавливаем R.

R под Windows:

  1. Заходим на официальный сайт

  2. Кликаем Download R for Windows

  3. Выбираем base. Это не какая-то ограниченная, базовая версия, а самая настощая полная версия R.

  4. Кликаем Download R 3.3.x for Windows

  5. Запускаем установщик.

  6. На вопрос установщика, куда устанавливать R, указываем папку C:R.

Проблема в том, что по умолчанию R ставится в папку C:Program files.... В имени папки есть пробел, который иногда приводит к проблемам. Чтобы не играть в лотерею с проблемами, лучше выбрать папку C:R или любую другую без русских букв и пробелов.

R под Macos:

  1. Заходим на официальный сайт

  2. Кликаем R-3.3.x.pkg

  3. Запускаем установщик.

Раньше при установке R пользователь должен был выбрать зеркало, с которого скачивать R. Это пугало новичков! Разработчики не сразу поставили автоматический выбор зеркала. Выбор ещё остался при установке пакетов. Можно смело брать любое, например, самое первое, 0-cloud.

R под linux

Linux на примере Ubuntu 16.04 Xenial:

sudo echo "deb http://cran.rstudio.com/bin/linux/ubuntu xenial/" | sudo tee -a /etc/apt/sources.list
gpg --keyserver keyserver.ubuntu.com --recv-key E084DAB9
gpg -a --export E084DAB9 | sudo apt-key add -
sudo apt-get update
sudo apt-get install r-base r-base-dev

Установка R для суровых челябинцев {#r_chelyabinsk}

Вместо классического R можно поставить конкурирующий дистрибутив R от Microsoft, MRO. Отличия MRO от классического R:

  1. Работает только с 64-битным процессором

  2. Использует быструю библиотеку MKL для операций с матрицами

  3. По умолчанию ставит не самые свежие пакеты, а версии пакетов, выпущенные на заданную дату. Это удобная особенность позволяет легко воспроизвести результаты работы, даже если какой-нибудь пакет кардинально изменился.

Суровые челябинские мужики могут самостоятельно настроить R на использование быстрых библиотек для матричных операций:

Macos: настраиваем оптимизированную под мак библиотеку:

cd /Library/Frameworks/R.framework/Resources/lib
ln -sf /System/Library/Frameworks/Accelerate.framework/Frameworks/vecLib.framework/Versions/Current/libBLAS.dylib libRblas.dylib

Macos: восстанавливаем дефолтную библиотеку R:

cd /Library/Frameworks/R.framework/Resources/lib
ln -sf libRblas.0.dylib libRblas.dylib

На линуксе можно поэкспериментировать с выбором разных BLAS

Rstudio {#install_Rstudio}

Оболочка Rstudio открытая и бесплатная. Есть платная версия Rstudio, платной в ней является круглосуточная поддержка пользователей. И иногда оболочку Rstudio путают с программой для восстановления данных R-studio, которая полностью платная.

  1. Скачиваем
    текущую версию Rstudio Desktop.

  2. Запускаем установщик.

  3. Под Windows на вопрос установщика, куда устанавливать Rstudio, указываем папку C:Rstudio.

Проблема с Rstudio потенциально та же, что и с R: могут возникнуть трудности при использовании папки с русскими буквами и пробелами, а по умолчанию Rstudio ставится в C:Program Files....

Любители заглянуть вперёд и опробовать новые фишки могут поставить preview-версию Rstudio. Теоретически подобная бета-версия может быть менее устойчивой, чем обычная. По моему опыту никаких проблем со стабильностью в preview-версии не было, а приятные плюшки, ещё не вошедшие в текущую версию, есть :)

Настройка Rstudio:

  1. Заходим в Tools — Global options — General:
  • Убираем галочку Restore .Rdata into workspace at startup.

  • В разделе Save workspace to .Rdata on exit выбираем Never

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

  1. Заходим в ToolsGlobal optionsSweawe:
  • В разделе Weave .Rnw files using выбираем knitr.

Для связи R с LaTeX мы будем использовать более передовой knitr. Первопроходец Sweave сделал прекрасную работу, и его подвиги мы будем помнить и чтить :)

  1. Заходим в ToolsGlobal optionsCodeDiagnostics:
  • Выставляем все галки!

Настоящие леди и джентельмены, а также синьоры и синьориты, пишут стильный код!

Тяжёловооружённая кавалерия {#other_programs}

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

LaTeX {#install_Latex}

LaTeX — это система для создания красивых структурированных текстов. Читается «Латех». Пользоваться Вордом для написания курсовых или научных статей — это дурной вкус.

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

Под Linux основной дистрибутив LaTeX — это TeXLive. Лучше всего поставить свежую версию TeXLive руками.

После ручной инсталляции нам надо убедить Ubuntu, что ей не надо ставить LaTeX из своего репозитория:

sudo apt-get install equivs freeglut3
mkdir -p /tmp/tl-equivs && cd /tmp/tl-equivs
wget http://www.tug.org/texlive/files/debian-equivs-2016-ex.txt
cp -f debian-equivs-2016-ex.txt texlive-local
equivs-build texlive-local
sudo dpkg -i texlive-local_2016-2_all.deb

Под Macos основной дистрибутив LaTeX — это Mactex.

Под Windows существует два конкурирующих дистрибутива — TexLive и Miktex. Я лично рекомендую TexLive. Если выбирать Miktex, то для установки полноценного теха надо скачать не Basic Miktex, а Net Installer!

Важно ставить полную версию со всеми пакетами!

Полная установка может занять больше часа, и занять несколько гигабайт жёсткого диска, но красивые документы того стоят.

Если нет необходимости делать красивые структурированные документы в pdf формате, то без LaTeX можно обойтись.

В данном учебнике не будет серьёзного введения в LaTeX, мы только затронем вопрос взаимодействия R-LaTeX.

Хорошим введением в LaTeX будет: Воронцов, LaTeX в примерах^[Единственным неудачным советом в книжке Воронцова, пожалуй, является выбор кодировки СP1251, правильнее выбирать UTF-8.]

git-клиент {#install_git}

Git — это система контроля версий. Она позволяет разным авторам работать над одним проектом. Если что-то пошло не так, то можно вернуться на любой момент времени в прошлом — это бывает очень полезно :)

Тру-программеры работают с git из командной строки, а новичкам здорово облегчит жизнь git с графической оболочкой.

Для windows и macos есть оболочка Github Desktop, доступная на desktop.github.com.

В качестве альтернативы Github Desktop есть кросс-платформенный и бесплатный для некоммерческих проектов Smartgit. Будь осторожен при установке: надо вовремя поставить галочку на бесплатной версии. Иначе установится демка на 15 дней.

Если ты хочешь освоить git как тру-программер, то можешь начать с бесплатного курса try-git на codeschool.com.

Немного стартовых настроек в командной строке macos/linux:

git config --global user.name "Ivan Ivanov"
git config --global user.email Ivan_Ivanov@ivanov_mail.com

Текстовый редактор {#install_editor}

Самое важное: Word — это не текстовый редактор! Текстовый редактор — это
программа с помощью которой редактируют файлы с простым текстовым содержимым, а
Word сохраняет файлы в специальном формате, где кроме текста сохраняется ещё
куча дополнительной информации. Расширение у текстового файла может быть
довольно произвольным, .txt, .md, .R, .tex и так далее.

Текстовых редакторов много. Я советую кросс-платформенный открытый и бесплатный Atom. Скачать его можно на atom.io. Изнутри самого редактора Atom можно установить кучу плагинов. С помощью плагинов можно подсвечивать синтаксис различных языков или превратить Atom в приличную среду разработки :)

Дополнительные плагины для Atom ставятся через меню Atom — Preferences — Install. Для работы с R и LaTeX советую поставить плагины language-markdown, language-knitr, atom-beautify.

jupyter {#install_jupyter}

jupyter — это браузерная оболочка для кучи языков программирования. Сокращение jupyter намекает на три языка наиболее пригодных для научных вычислений: julia, python и R. Проще всего установить дистрибутив Anaconda, в него входит и python, и jupyter.

  1. Скачиваем анаконду с www.continuum.io

Есть две версии python: вторая и третья. Третья — более новая, но под вторую написано много того, что под третьей ещё не рабоет. Если не знаешь, какой python тебе нужен, значит, тебе нужен третий.

Далее нужно зарегистрировать R в jupyter’е:

  1. Запускаем R. Под Linux и Macos важно запустить R из командной строки. Именно из командной строки, а не из под Rstudio, иначе чуда не произойдёт.

  2. Далее инструкция с github.com/IRkernel/IRkernel:

install.packages(c('repr', 'IRdisplay', 'crayon', 'pbdZMQ', 'devtools'))
devtools::install_github('IRkernel/IRkernel')
IRkernel::installspec()  # to register the kernel in the current R installation
  1. Для корректного сохранения блокнота в pdf на Linux/Macos ставим мелочи:

Запуск jupyter из командной строке на Linux/Macos:

Чтобы работало сохранение pdf с русскими буквами нужно руками подменить дефолтный шаблон.

LyX {#install_lyx}

Многие пользователи, привыкшие к Ворду, тяжело переходят на LaTeX. Ведь в текстовом редакторе не видно формулу в привычном виде, а виден только её код. Редактор LyX заполняет эту нишу: используя за кадром тех, он показывает пользователю формулы, таблицы и рисунке в естественном виде. При этом LyX отлично взаимодействует с R.

Недостатком LyX, пожалуй, является его невысокая популярность. Пользователи, боящиеся LaTeXа, сидят в Ворде, а те, кто понял прелести LaTeXа, уже не хотят ничего вспомогательного :)

Windows и Macos: скачиваем с lyx.org.

Linux (Ubuntu 16.04):

sudo add-apt-repository ppa:lyx-devel/release
sudo apt-get update
sudo apt-get install lyx

Шрифты {#install_font}

При создании готовых документов автору нужно подумать о шрифте!

У windows и macos есть встроенные программы управления шрифтами. Для linux (Ubuntu 16.04) просмотрщик шрифтов легко поставить:

sudo add-apt-repository ppa:font-manager/staging
sudo apt-get update
sudo apt-get install font-manager

Шрифты могут быть записаны в разных форматах. Основные — это TTF, OTF и Post-script. Рядовой пользователь может смело выбирать TTF или OTF, а Post-script нужен скорее дизайнерам и типографам.

В pdf-версии данного учебника используется шрифт Linux Libertine OTF. Он открытый, бесплатный и содержит буквы как русского, так и многих других алфавитов. Скачать можно на linuxlibertine.org.

Pandoc

Pandoc — это конвертер текстовых форматов. Он умеет превращать файлы в формате маркдаун, md, во всё, что движется: tex, pdf, docx, epub, html, …

Pandoc входит комплект Rstudio, поэтому отдельно его ставить не нужно.

Впрочем, можно поставить Pandoc и отдельно, без Rstudio. Под windows и macos можно скачать установщик с официального сайта pandoc.org.

А под linux (Ubuntu 16.04) можно поставить pandoc из командной строки:

sudo apt-get install pandoc pandoc-citeproc

gretl {#install_gretl}

Тебе страшно? Ты боишься R,
а регрессию надо построить через 5 минут? Тогда разумное спасение — это эконометрический пакет
gretl. Для gretl не обязательно учиться программировать: статистические тесты,
графики и эконометрические модели доступны через меню. Кроме того, gretl даёт
возможность пользователю взаимодействовать с R, что спасает в тех случаях, когда
возможностей gretl не хватает.

Естественно, gretl кросс-платформенный открытый и бесплатный, скачать можно с официального сайта
gretl.sourceforge.net.

Весёлый калькулятор {#funny_calc}

R можно использовать как весёлый калькулятор:

Что-нибудь более интересное, например, $4! + 2^3 + C_4^2$:

a <- factorial(4)
b <- 2^3
a + b + choose(n = 4, k = 2)

Признайся, ты всегда мечтал пошалить? Давай, пока никто не видит, поделим на ноль?

Что можно делать с бесконечностью, Inf?

Возьмём арктангенс!

Ба! Да это же $pi/2$:

Но с неопределенностью ничего не поделаешь:

Сокращение NaN означает «Not a Number», такой объект возникает в результате запрещённых арифметических операций.

Также в дебрях R живёт другой интересный зверь — NA, «Not Available», пропущенное наблюдение. Наблюдение может быть пропущенным по разным причинам: может быть его не было изначально, а может оно родилось в результате запрещённых арифметических операций. Поэтому всякое NaN является NA, но не всякое NA является NaN. Проверять, является ли что-либо NA или NaN, можно так:

Простые операции с векторами {#simple_vector_ops}

Вектор из чисел по порядку:

Вектор из одинаковых чисел:

b <- rep(777, times = 5)
b
## [1] 777 777 777 777 777

Вектор из конкретных чисел:

Что можно делать с вектором?

Хотите среднее арифметическое?

Если в векторе есть пропущенные значение, NA, то есть два варианта подсчёта среднего:

v_na <- c(1, 2, 3, NA)
mean(v_na)

Команда mean(v_na) выдаст NA, а команда mean(v_na, na.rm = TRUE) удалит из вектора все NA и потом посчитает среднее.

Ещё одна полезная штучка — количество элементов в векторе:

Отбор элементов вектора {#value_selection}

Выберем из вектора $s$ значения больше $0$:

# случайная выборка из 40 равномерно распределённых на [-3;1] чисел:
s <- runif(40, min = -3, max = 1)
b <- s[s > 0] # отбираем те s, что больше нуля
b
## [1] 0.1338291 0.2500939 0.3983962 0.3730611 0.8999100 0.9816424 0.3702561
## [8] 0.4205341

С точки зрения R, s > 0 — это вектор из TRUE/FALSE:

##  [1]  TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE
## [12] FALSE FALSE  TRUE FALSE  TRUE FALSE FALSE FALSE FALSE  TRUE FALSE
## [23] FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE FALSE FALSE
## [34] FALSE FALSE FALSE  TRUE  TRUE FALSE FALSE

В отличие от python и C++ элементы вектора в R нумеруются начиная с первого.

Можно выбрать конкретные $s$, например с 6-го по 20-ое:

##  [1] -1.3566711 -0.6790562 -1.9059443 -2.8131169  0.2500939 -2.1211139
##  [7] -2.8207667 -0.5707645  0.3983962 -1.1874025  0.3730611 -2.4957268
## [13] -0.6896672 -1.8392315 -0.3724348

Хочу 5-ый, 7-ой и 13-ый элементы вектора!

## [1] -0.09080548 -0.67905618 -0.57076446

Можно узнать, сколько значений s больше нуля:

Сравнение чисел — штука тонкая {#number_comparison}

Правда ли, что 0.4 + 0.1 равно 0.5?

А правда ли, что 0.4 — 0.1 равно 0.3?

Хм, что-то Марь Иванна в школе другое говорила…

Почему так случилось? Компьютер хранит числа в памяти в двоичной системе
счисления. В двоичной системе обычное число 0.1 будет записываться в виде
бесконечной периодической дроби. Следовательно, без дополнительных ухищрений
храниться в памяти абсолютно точно оно не может. Поэтому де-факто компьютер
хранит в памяти округленную версию от 0.4, 0.1 и 0.3. В данном случае при
вычитании ошибки округления не компенсируют друг друга.

Мораль из этого примера проста:

При операциях с дробными числами помни: компьютер считает примерно!

Скорее всего, проверка точного равенства потенциально дробных чисел не нужна. Вместо неё бывает осмысленна проверка примерного равенства:

all.equal(0.4 - 0.1, 0.3)

Единственный нюанс. Оператор == выдаёт результат типа TRUE/FALSE, а функция all.equal может выдать развёрнутый ответ текстом. Поэтому, если нужно использовать функцию all.equal после проверки условия if, то её нужно обрамить в isTRUE:

if (isTRUE(all.equal(a, b))) {
  ...
}

Первый скрипт {#first_script}

….

Если текст программы содержит русские или другие неанглийские буквы, например, в
комментариях, то при сохранении файла Rstudio предложит выбрать кодировку.

картинка

Кодировка определяет какой конкретно числовой код будет сопоставлен в записанном
файле каждой букве. Например, букве ё в кодировке UTF-8 сопоставлен
десятичный^[Если шестнадцатиричный, то 0451. Ради интереса можно посмотреть
сопоставление букв и их кодов в UTF-8, например, на
unicode-table.com] код 1105.

Для русского языка есть несколько распространённых кодировок: UTF-8 и CP1251.
Linux и Macos используют по умолчанию кодировку UTF-8, а вот Windows^[На самом
деле всё немного хитрее и сама Windows технически использует UTF-16, а вот
многие приложения под ней — CP1251.] сохраняет простые текстовые файлы в
кодировке CP1251.

Если русскоязычный файл записать в одной кодировке, а пытаться открыть с помощью
другой, то мы увидим на экране «кракозябры». Поэтому хорошо, когда все
используют одну кодировку. Кодировка UTF-8 более универсальна, чем CP1251.
Например, с помощью кодировки UTF-8 в одном тексте можно использовать и русские
буквы и французские акценты и китайские иероглифы.

Мы всегда будем использовать кодировку UTF-8.

Установка и подключение пакетов {#packages}

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

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

Скорее всего нужный тебе пакет можно найти:

  1. В официальном хранилище пакетов R, CRAN.

Здесь пакеты прошли минимальное тестирование. Это отнюдь не гарантия качества
пакета, но всё же серьёзный, давно функционирующий пакет, наверняка, будет выложен
на CRAN.

  1. В системе репозиториев github.com.

Здесь, как правило, разработчики публикуют более свежие версии пакетов, ещё не
выложенные на CRAN, или молодые пакеты в процессе разработки.

  1. В хранилище пакетов для биологов bioconductor.

Это своя отдельная экосистема пакетов R со специальным инсталлятором, блэкджеком
и поэтэссами.

Есть и другие хранилища пакетов, например, R-forge, r-forge.r-project.org и Rforge, rforge.net, но они гораздо менее популярны.

Чтобы начать использовать какой-нибудь пакет R нужно сделать две вещи:

  1. Установить пакет

Установка означает, что пакет будет скачан из
Интернета и сохранён в специальной папке на жёстком диске. Установка пакета
выполняется один раз. Каждый раз при использовании пакета устанавливать его не нужно. Переустанавливать пакет имеет смысл, только если вышла новая его версия.

  1. Подключить пакет (attach package)

Подключение пакета выполняется каждый раз перед его использованием. Пакеты подключаются командой library("имя пакета").

Очень часто пакеты R ошибочно называют библиотеками. Библиотека — это папка на
жёстком диске компьютера, где хранятся пакеты.

Для установки различных пакетов, работающих с Интернетом под Linux может потребоваться установка дополнительных библиотек:

sudo apt-get install libssl-dev libcurl4-openssl-dev libxml2-dev

Установка пакета с официального репозитория CRAN

С репозитория CRAN пакет ставится командой R:

install.packages("имя пакета")

В Rstudio установить пакет с репозитория CRAN можно через меню: ToolsInstall
packages. Далее нужно набрать название пакета, можно указать сразу несколько
названий через пробел, и нажать Install.

Главное при установке пакета — не бояться сообщений красным цветом!

Любые сообщения (messages) R выводит красным цветом и по неопытности их
можно принять за ошибку, что скорее всего не так. Ошибка всегда сопровождается
словом Error. Если слова Error нет, то всё идёт по плану!

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

Для примера установим с репозитория CRAN пакет для построения графиков ggplot2:

install.packages("ggplot2")

Напомним, что установка пакетов выполняется один раз.

Установка пакета с репозитория bioconductor {#bioconductor}

О пакетах для биологов подробно написано на официальном сайте bioconductor.org. Поставить основную часть подборки можно парой команд:

source("https://bioconductor.org/biocLite.R")
biocLite()

Также можно поставить и любой конкретный пакет из биологической подборки. Например, поставим пакет mygene для перевода наименований генов из одной системы в другую:

Подключение и использование пакетов {#attach_and_use}

После того, как пакет ggplot2 установлен можно его подключить

И начать использовать :) Здесь мы лишь быстренько построим гистограмму для случайной выборки из нормального распределения, а с красотами ggplot2 ознакомимся позже:

## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Функция qplot содержится в пакете ggplot2. Если пакет не установлен, или установлен, но не подключен, то R выдаст ошибку Error: could not find function "qplot".

Иногда разумно использовать команды из какого-нибудь пакета не подключая его командой library. Тогда надо явно указать имя пакета перед функцией, как в C++:

x <- rnorm(100)
ggplot2::qplot(x)
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

При подключении пакета, как и при его установке, не стоит пугаться сообщений
красным шрифтом. Только явное слово Error говорит об ошибке. Кроме того, часто
можно столкнуться с предупреждением (warning) о том, что пакет был создан
для более новой версии R.

Warning message: package ‘xxx’ was built under R version 3.3.1

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

Правила хорошего тона советуют подключать все нужные пакеты в начале скрипта.

Часть пакетов, например, пакет stats, входит в ядро R. Пакеты из ядра R не требуется подключать явно, поэтому функции из пакета stats доступны и без выполнения library("stats").

Установка пакетов с репозитория на github

Установить пакет с github.com немногим сложнее. Здесь надо знать не только
название пакета, но и название репозитория, где пакет хранится. Часто название
репозитория — это фамилия автора пакета. Официальной классификации всех
пакетов R на github нет. Можно воспользоваться поисковиком github-пакетов на r-how.com/packages/github_repo или погуглить.

Кроме того, для установки пакетов с github.com потребуется установить вспомогательный пакет для разработчиков, devtools:

install.packages("devtools")

После того, как devtools установлен, мы можем устанавливать любой пакет с репозиториев на github. Например, установим самую свежую версию графического пакета ggplot2 с репозитория tidyverse:

devtools::install_github("tidyverse/ggplot2")

Какие пакеты мне нужны?

Джентельменский набор пакетов R зависит от сферы деятельности, но практически
всем, сталкивающимся с анализом данных, пригодится пакет-коллекция tidyverse. Ставится коллекция tidyverse стандартно:

install.packages("tidyverse")

Например, в коллекцию tidyverse входят:

  • ggplot2 для построения шикарных двумерных графиков
  • tidyr для причёсывания наборов данных
  • readr для чтения данных
  • dplyr для манипуляций с данными
  • forcats для работы с качественными данными

Подключить пакет-коллекцию можно одной командой:

В официальном классификаторе пакетов R cran.r-project.org/web/views можно найти тематические подборки по эконометрике, временным рядам и другим сюжетам. В R для всего есть пакет :) Для того, чтобы установить тематическую подборку пакетов тоже есть пакет, называется ctv. Поставим пакет ctv и с помощью него установим эконометрическую подборку пакетов:

install.package("ctv")
ctv::install.views("Econometrics")

Каждый пакет из подборки подключается своей отдельной командой. Например, после установки подборки Econometrics можно подключить пакет quantreg для квантильной регрессии:

И, конечно, чтобы найти нужный пакет можно погуглить или поискать похожий вопрос на stats.stackexchange.com.

Чтение и запись данных {#io}

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

У R есть понятие рабочей папки (working folder). В рабочей папке R ищет все
требуемые файлы. Одно из простых решений — указать в качестве рабочей папки ту, где лежит нужный файл и далее прочитать его.

Допустим, нужный нам файл лежит в папке C:/project_A/data/. Тогда для
установки рабочей папки достаточно выполнить команду:

setwd("C:/project_A/data/")

Вместо этой команды можно воспользоваться меню Rstudio: SessionSet working directoryChoose directory. Далее выбрать нужную папку и нажать Open.

После этого можно прочитать нужный нам файл. Начнём с пакета rio позволяющего импортировать данные практически любого типа. На самом деле авторы пакета rio просто объединили усилия многих разработчиков в единую команду. И получилось хорошо :)

Хочешь загрузить данные в формате .csv? Пожалуйста!

data <- rio::import("имя_файла.csv")

Хочешь загрузить данные в формате .xlsx? Пожалуйста!

data <- rio::import("имя_файла.xlsx")

Однако не всегда всё идёт гладко, поэтому остановимся подробнее на распространённых
форматах хранения данных.

Распространённые форматы {#popular_formats}

Comma separated values: сsv

— Иван, ты знаешь, у нас в Чили есть нестандартные обозначения. Мы используем десятичную запятую вместо точки, умножение пишем точкой, а не крестиком, деление — двумя точками, а при измерении температуры пользуемся градусами Цельсия. Я уверен, что ты сможешь поправить все по-своему, как привыкли дети в России.

— Разумеется, Раймундо, сделаем. Это не составит труда.

Со стены Ивана Высоцкого вконтакте

Формат .csv, comma separated values, «значения разделённые запятыми», является самым простым и, пожалуй, самым распространённым. Практически любой статистический софт умеет читать и сохранять данные в формате .csv. Поэтому часто .csv файлы используют, чтобы перебросить данные из одной программы в другую.

Классический .csv файл выглядит примерно так:

id, height, weight, sex
1, 180, 80.5, Male
2, 160, 62.5, Female
3, 150, 51.0, Female
4, 170, 83.5, Male
...

В первой строке .csv файла, как правило, через запятую перечислены названия переменных. В последующих строках идут сами данные. Название формата, comma separated values означает, что по стандарту различные переменные должны быть разделены запятыми. Целая часть числа должна отделяться от дробной точкой.

Классический, соответствующий стандарту, .csv файл прекрасно импортируется командой import из пакета rio:

data <- rio::import("имя_файла.csv")

Также для классического .csv подойдёт функция read_csv из пакета readr:

data <- readr::read_csv("имя_файла.csv")

Однако на практике можно столкнуться и с «чилийским» .csv. В «чилийском» .csv файле дробная часть числа будет отделяться от целой с помощью запятой. Поэтому различные переменные будут отделяться точкой с запятой. Например, англоязычная версия MS Excel сохраняет классический .csv, а русскоязычная — чилийский.

Чилийский .csv выглядит примерно так:

id; height; weight; sex
1; 180; 80,5; Male
2; 160; 62,5; Female
3; 150; 51,0; Female
4; 170; 83,5; Male
...

Чилийский .csv можно прочитать функцией read_csv2 из пакета readr:

data <- readr::read_csv2("имя_файла.csv")

Чилийским данный формат называется потому, что является национальным стандартом в Чили. Дробную часть числа от целой отделяют запятой также в Бразилии, Росии, Франции и некоторых других странах.

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

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

Данные из .csv файла можно загрузить в память компьютера также через меню Rstudio: FileImport DatasetFrom CSV. Можно выставить требуемые опции, а Rstudio подскажет необходимый код R.

Форматы Excel: xls и xlsx

Самое главное: если есть возможность экспортировать данные из Excel в формат .csv, то лучше воспользоваться ей. Формат .csv проще и надёжнее.

Excel сохраняет файлы в двух форматах: старом .xls и новом .xlsx. Если выбор стоит между этими форматами, то лучше сохранять в новом .xlsx. Чтобы быстро и удачно импортировать данные из Excel в R нужно максимально стандартно оформить их на листе. А именно:

  1. На листе должны быть только данные. Никаких графиков и фильтров.

  2. В первой строке листа должны идти названия столбцов. Названия столбцов должны быть короткие, без пробелов, на английском языке. Хорошо: rabbit_weight, плохо: Вес кролика.

  3. Не должно быть объединённых ячеек, шрифтов разного размера и выделения цветом.

  4. Пропущенные значения лучше кодировать с помощью записи NA.

Файлы форматов .xlsx или .xls можно прочитать с помощью команды read_excel из пакета readxl:

data <- readxl::read_excel("имя_файла.xlsx")

Также эти форматы можно загрузить в память компьютера через меню Rstudio: FileImport DatasetFrom Excel. Можно выставить требуемые опции, а Rstudio подскажет необходимый код R.

Формат SPSS: sav

Как и в случае с Excel, если есть возможность сохранить данные в формате .csv, то лучше воспользоваться ею. Если такой возможности нет, то поможет пакет haven и функция read_spss:

data <- haven::read_spss("имя файла.sav")

Также можно воспользоваться меню Rstudio: FileImport DatasetFrom spss.

Формат Eviews: wf1

И снова не побоюсь сказать: если есть возможность, воспользуйся экспортом данных в формат .csv. Если такой возможности нет, то поможет пакет hexView и функция readEviews:

data <- hexView::readEViews("имя файла.wf1")

Формат Stata: dta

Дорогой друг, ты ещё помнишь, что лучше прочитать данные через экспорт в формат .csv? Если не судьба, то импортировать данные с помощью команд R:

data <- haven::read_dta("имя файла.dta")

И снова можно воспользоваться меню Rstudio: FileImport DatasetFrom stata.

Интернет-источники данных {#internet_sources}

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

  1. quandl

  2. quantmod

  3. WDI

СССР — родина слонов!

Пакеты, дающие доступ к данным по России:

  1. sophisthse sophist.hse.ru

  2. cbr Центральный Банк России

  3. datamos datamos.ru

  4. finam.ru.

А эти источники ещё ждут желающих написать пакет для R:

  1. gks.ru

  2. open data gov ???

Стиль кода {#code_style}

R одинаково выполнит и команды

и команды

x <- 6 - 7
y <- -6 + 9
x - y

Однако второй вариант гораздо приятнее для чтения. С тем, кто пишет код как в
первом примере, Английская королева рядом не сядет! Чтобы иметь возможность
войти в палату Лордов и Общин, тебе следует писать стильный код!

Если ты работаешь в команде, то руководствуйся тем стилем кода, который в ней
принят. А для новичков я советую использовать стиль кода, которого
придерживается Hadley Wickham, автор очень популярных пакетов R ggplot2 и
dplyr:

  1. После запятой всегда пиши пробел. Перед запятой — никогда:
  1. Знак присваивания <-, знаки арифметических действий (+, -, *),
    логические проверки (>, <, == и прочие) с двух сторон окружай одинарными
    пробелами.
x <- (3.5 + 7) * (2.8 - 9)
  1. Открывающую фигурную скобку оставляй на старой строке, а закрывающую —
    ставь на новую:
if (x == y) {
  message("Variables x and y are equal.")
}

В Rstudio можно включить автоматическую проверку стиля кода в Tools — Global
options — Code — Diagnostics. Настоящие сэры и истинные леди в разделе
Diagnostics могут проставить все галочки.

Две записи функций {#two_traditions}

Мы все привыкли к тому, что домохозяйки пишут рецепт в естественном порядке, а
математики функции — в обратном. Сравни:

Возьмите пепел перьев чёрного петуха

Добавьте печень дракона

Варите на медленном огне 2 дня

и

[
cos(sin(|x|))
]

У домохозяек порядок изложения совпадает с порядком действий. У математиков
сначала написано про косинус, но считается он в самом конце.

Похоже Лёнька Эйлер и Алёшка Клеро

фото

введя обозначение $f(x)$ отделили математиков от домохозяек и, вероятно, пустили
математику по ложному пути. Было бы гораздо удобнее, если бы в математике
функции также записывали в естественном порядке! Но обозначение $f(x)$ мы
впитали с молоком матери, уже вряд ли что исправишь.

R позволяет использовать обе традиции обозначени.

Традиция Эйлера-Клеро:

Для того, чтобы иметь возможность писать операции в естественном порядке,
подключаем пакет dplyr:

library("tidyverse") # подключит dplyr, ggplot2 и прочие приятности

И теперь, в традициях лучших кулинарных рецептов, можно написать

10 %>% abs() %>% sin() %>% cos()

Оператор %>% называется трубочкой (pipe). (? канал) По первому впечатлению
кажется, что эти трубочки долго писать. Но стоит к ним привыкнуть и ощущаешь,
что они безумно удобны для сложных операций!

Манипуляции с данными {#data_manipulations}

(здесь про типы данных)

Правильные имена переменных!!!

Основной объект с которым приходится работать — это табличка с данными. Табличка с данными представляет собой простую двумерную таблицу. Переменные размещаются по столбцам. Каждый столбец может быть своего типа: скажем в одном — числа, а в другом — названия предприятий. Если значение в клетке неизвестно, то там стоит специальное значение NA.

Отличие от матрицы от таблицы с данными состоит в том, что в матрице все клеточки одинакового типа (все — числовые или все — текстовые), а в таблице с данными каждый столбец может быть своего типа.

При обработке данных нам помогут рабочие лошадки:

  1. Быстрый взгляд на табличку

  2. Отбор наблюдений

  3. Отбор и переименование переменных

  4. Преобразование и создание новых переменных

Сортировка

  1. Операции с группировкой

  2. Преобразование широких и длинных таблиц

Все эти действия можно сделать в базовом R, но это ужасно неудобно. Жизнь становится прекрасной с пакетами data.table, dplyr, reshape2, broom и tidyr.

Седлаем наших верных коней:

library(tidyverse) # подключит пакеты dplyr, ggplot2 и прочие
library(data.table)
library(reshape2)

Погнали!

Пакет data.table работает быстрее dplyr, а у dplyr более приятный синтаксис.

Перед работой с табличкой данных с помощью data.table требуется присвоить ей специальный класс:

cars2 <- data.table(cars)
mtcars2 <- data.table(mtcars)

Содержимое таблиц cars и cars2 абсолютно одинаково, просто они чуть по-разному хранятся и обрабатываются компьютером.

Быстрый взгляд на табличку {#glimpse}

С помощью базового R:

## 'data.frame':	32 obs. of  11 variables:
##  $ mpg : num  21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ...
##  $ cyl : num  6 6 4 6 8 6 8 4 4 6 ...
##  $ disp: num  160 160 108 258 360 ...
##  $ hp  : num  110 110 93 110 175 105 245 62 95 123 ...
##  $ drat: num  3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ...
##  $ wt  : num  2.62 2.88 2.32 3.21 3.44 ...
##  $ qsec: num  16.5 17 18.6 19.4 17 ...
##  $ vs  : num  0 0 1 1 0 1 0 1 1 1 ...
##  $ am  : num  1 1 1 0 0 0 0 0 0 0 ...
##  $ gear: num  4 4 4 3 3 3 3 4 4 4 ...
##  $ carb: num  4 4 1 1 2 1 4 2 2 4 ...

С помощью dplyr:

## Observations: 32
## Variables: 11
## $ mpg  <dbl> 21.0, 21.0, 22.8, 21.4, 18.7, 18.1, 14.3, 24.4, 22.8, 19....
## $ cyl  <dbl> 6, 6, 4, 6, 8, 6, 8, 4, 4, 6, 6, 8, 8, 8, 8, 8, 8, 4, 4, ...
## $ disp <dbl> 160.0, 160.0, 108.0, 258.0, 360.0, 225.0, 360.0, 146.7, 1...
## $ hp   <dbl> 110, 110, 93, 110, 175, 105, 245, 62, 95, 123, 123, 180, ...
## $ drat <dbl> 3.90, 3.90, 3.85, 3.08, 3.15, 2.76, 3.21, 3.69, 3.92, 3.9...
## $ wt   <dbl> 2.620, 2.875, 2.320, 3.215, 3.440, 3.460, 3.570, 3.190, 3...
## $ qsec <dbl> 16.46, 17.02, 18.61, 19.44, 17.02, 20.22, 15.84, 20.00, 2...
## $ vs   <dbl> 0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, ...
## $ am   <dbl> 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, ...
## $ gear <dbl> 4, 4, 4, 3, 3, 3, 3, 4, 4, 4, 4, 3, 3, 3, 3, 3, 3, 4, 4, ...
## $ carb <dbl> 4, 4, 1, 1, 2, 1, 4, 2, 2, 4, 4, 3, 3, 3, 4, 4, 4, 1, 2, ...

С помощью broom

##   nrow ncol complete.obs na.fraction
## 1   32   11           32           0

и короткие описательные статистики:

##    column  n       mean          sd  median     trimmed         mad    min
## 1     mpg 32  20.090625   6.0269481  19.200  19.6961538   5.4114900 10.400
## 2     cyl 32   6.187500   1.7859216   6.000   6.2307692   2.9652000  4.000
## 3    disp 32 230.721875 123.9386938 196.300 222.5230769 140.4763500 71.100
## 4      hp 32 146.687500  68.5628685 123.000 141.1923077  77.0952000 52.000
## 5    drat 32   3.596563   0.5346787   3.695   3.5792308   0.7042350  2.760
## 6      wt 32   3.217250   0.9784574   3.325   3.1526923   0.7672455  1.513
## 7    qsec 32  17.848750   1.7869432  17.710  17.8276923   1.4158830 14.500
## 8      vs 32   0.437500   0.5040161   0.000   0.4230769   0.0000000  0.000
## 9      am 32   0.406250   0.4989909   0.000   0.3846154   0.0000000  0.000
## 10   gear 32   3.687500   0.7378041   4.000   3.6153846   1.4826000  3.000
## 11   carb 32   2.812500   1.6152000   2.000   2.6538462   1.4826000  1.000
##        max   range       skew    kurtosis          se
## 1   33.900  23.500  0.6106550 -0.37276603  1.06542396
## 2    8.000   4.000 -0.1746119 -1.76211977  0.31570933
## 3  472.000 400.900  0.3816570 -1.20721195 21.90947271
## 4  335.000 283.000  0.7260237 -0.13555112 12.12031731
## 5    4.930   2.170  0.2659039 -0.71470062  0.09451874
## 6    5.424   3.911  0.4231465 -0.02271075  0.17296847
## 7   22.900   8.400  0.3690453  0.33511422  0.31588992
## 8    1.000   1.000  0.2402577 -2.00193762  0.08909831
## 9    1.000   1.000  0.3640159 -1.92474143  0.08820997
## 10   5.000   2.000  0.5288545 -1.06975068  0.13042656
## 11   8.000   7.000  1.0508738  1.25704307  0.28552971

Пока что в пакете broom содержится ошибка, команды glance() и tidy() не срабатывают с некоторыми табличками данных. Тогда описательные статистики можно получить с помощью пакета psych:

## 
## Attaching package: 'psych'
## The following objects are masked from 'package:ggplot2':
## 
##     %+%, alpha
##      vars  n   mean     sd median trimmed    mad   min    max  range  skew
## mpg     1 32  20.09   6.03  19.20   19.70   5.41 10.40  33.90  23.50  0.61
## cyl     2 32   6.19   1.79   6.00    6.23   2.97  4.00   8.00   4.00 -0.17
## disp    3 32 230.72 123.94 196.30  222.52 140.48 71.10 472.00 400.90  0.38
## hp      4 32 146.69  68.56 123.00  141.19  77.10 52.00 335.00 283.00  0.73
## drat    5 32   3.60   0.53   3.70    3.58   0.70  2.76   4.93   2.17  0.27
## wt      6 32   3.22   0.98   3.33    3.15   0.77  1.51   5.42   3.91  0.42
## qsec    7 32  17.85   1.79  17.71   17.83   1.42 14.50  22.90   8.40  0.37
## vs      8 32   0.44   0.50   0.00    0.42   0.00  0.00   1.00   1.00  0.24
## am      9 32   0.41   0.50   0.00    0.38   0.00  0.00   1.00   1.00  0.36
## gear   10 32   3.69   0.74   4.00    3.62   1.48  3.00   5.00   2.00  0.53
## carb   11 32   2.81   1.62   2.00    2.65   1.48  1.00   8.00   7.00  1.05
##      kurtosis    se
## mpg     -0.37  1.07
## cyl     -1.76  0.32
## disp    -1.21 21.91
## hp      -0.14 12.12
## drat    -0.71  0.09
## wt      -0.02  0.17
## qsec     0.34  0.32
## vs      -2.00  0.09
## am      -1.92  0.09
## gear    -1.07  0.13
## carb     1.26  0.29

Отбор наблюдений {#filter_observations}

С помощью dplyr:

##   speed dist
## 1     4    2
## 2     4   10
## 3     7    4
## 4     7   22
## 5     8   16
## 6     9   10
new_cars <- filter(cars, speed > 10, dist < 20)
head(new_cars)
##   speed dist
## 1    11   17
## 2    12   14

Не забывай про эквивалентный трубчатый синтаксис:

new_cars <- cars %>% filter(speed > 10, dist < 20)

Некоторые другие пакеты помимо dplyr содержат функцию filter — уж больно слово filter популярное. Конфликт имён при использовании команды filter — одна из распространённых ошибок.

Чтобы избежать ошибки из-за конфликта имён можно явно написать dplyr::filter вместо просто filter!

А именно:

new_cars <- cars %>% dplyr::filter(speed > 10, dist < 20)

С помощью data.table:

new_cars <- cars2[speed > 10 & dist < 20]

Отбор и переименование переменных: {#select_rename}

К примеру, мы хотим из набора данных mtcars отобрать три переменных, mpg, carb и cyl, а заодно дать им более понятные имена: переименовать cyl в cylinder и carb в carburator.

С помощью dplyr:

new_mtcars <- select(mtcars, cylinder = cyl, mpg, carburator = carb)

Помни о трубочках:

mtcars2 <- mtcars %>%
  select(cylinder = cyl, mpg, carburator = carb)

Некоторые другие пакеты помимо dplyr содержат функцию select. Чтобы избежать конфликта имён, можно явно написать dplyr::select вместо просто select.

С помощью пакета data.table:

# new_mtcars2 <- mtcars2[, .(cylinder = cyl, mpg, carburator = carb)]

Если переназывать переменные не требуется, то можно отобрать переменные и по-другому:

# new_mtcars2 <- mtcars2[, c("mpg", "cyl")]

Преобразование и создание новых переменных {#mutate_variables}

Допустим, я хочу в наборе данных mtcars создать новую переменную weight2 равную квадрату переменной wt, а переменную mpg отмасштабировать из милей на галлон бензина в километры на литр бензина. Интернет говорит, что в одном галлоне …. литров, а в одной миле — … километров.

Начнём с трубчатого синтаксиса:

# new_mtcars <- mtcars %>% mutate(weight2 = wt^2, mpg = mpg * ... / ...)

То же действие без трубочек:

# new_mtcars <- mutate(mtcars, weight2 = wt^2, mpg = mpg * ... / ...)

Создаём новую переменную с помощью пакета data.table:

# new_mtcars2 <- mtcars2[, weight2 := wt^2]

Если нужно создать сразу несколько переменных, то синтаксис data.table чуть более громоздкий, чем у dplyr:

# new_mtcars2 <- mtcars2[, weight2 := wt^2][, mpg := mpg / 100]

Или так:

# new_mtcars2 <- mtcars2[, `:=`(weight2 = wt^2, mpg = mpg / 100)]

Чтобы лучше была понятна разница, подчеркну отличие двух команд:

# команда A:
# new_mtcars2 <- mtcars2[, .(weight2 = wt^2, mpg = mpg / 100)]
# команда B:
# new_mtcars2 <- mtcars2[, `:=`(weight2 = wt^2, mpg = mpg / 100)]

После выполнения команды A в массиве new_mtcars2 будет только две переменных: weight2 и mpg. А после выполнения команды B также останутся и все старые переменный из исходной таблички mtcars2.

Сортировка {#df_sorting}

Операции с группировкой {#group_by}

Слияние наборов данных {#join_df}

Комбо-серия! {#mortal_kombat}

Графики {#graphs}

График можно строить либо чтобы: — самому по-быстрому взглянуть на некий
результат и сразу забыть график — показать график кому-нибудь

В первом случае нет никаких требований к графику — лишь бы самому было
понятно, что там изображено. Если же график показывать кому-то ещё, то:

Идеальный график должен быстро и верно восприниматься смотрящим.

Из этого простого принципа следует ряд выводов:

  1. Идеальный график должен быть самодостаточным.

Если для понимания графика смотрящему требуется прочитать кучу текста вокруг или
прослушать получасовое объяснение, то это нехорошо :) Вырежи свой график из
статьи/книги/курсовой и подумай, понятен ли он?

  1. Подписывай оси.

[ссылка на xkcd]

  1. Выбирай единицы измерения так, чтобы читатель не мучился, считая нули у
    каждой цифры.

  2. Указывай единицы измерения.

  3. Хорошо бы указать источник данных.

  4. Лучше расшифровать сокращения, хотя иногда это бывает нелегко.

  5. Никаких круговых диаграмм.

Круговые диаграммы — это табу. Да, R умеет их строить. Процитирую документацию к функции pie:

Pie charts are a very bad way of displaying information. The eye is good at judging linear measures and bad at judging relative areas. A bar chart or dot chart is a preferable way of displaying this type of data.

Cleveland (1985), page 264: “Data that can be shown by pie charts always can be shown by a dot chart. This means that judgements of position along a common scale can be made instead of the less accurate angle judgements.” This statement is based on the empirical investigations of Cleveland and McGill as well as investigations by perceptual psychologists.

  1. Никаких псевдо-3D эффектов и прочих «рюшечек».

Посмотрите пару анимаций от DarkHorse.

  1. Ось должна начинаться от нуля.

  2. Полезно немного ознакомиться с творениями мэтров :)

Tufte, link

Очень часто к графикам относятся как к чему-то вспомогательному. На самом деле график очень часто является основным результатом, гораздо более важным, чем несколько страниц текста. Именно поэтому полезно отказаться от мысли «я тут за пять минут график вставлю» и потратить на график часок-другой!

Два простеньких графика {#two_simple_graphs}

Простенькую гистограмму можно построить, например, с помощью функции qplot()
из пакета ggplot2:

s <- rnorm(100)
qplot(factor(s), xlab = "Значение",
ylab = "Количество", main = "Гистограмма")

Ту же гистограммку можно построить с помощью функции ggplot() из того же
пакета, предварительно преобразовав s в необходимый для ggplot() формат data
frame:

s_df <- data.frame(s)
ggplot(s_df) + geom_bar(aes(factor(s))) +
labs(x = "Значение", y = "Количество", title = "Гистограмма")

И еще простенький график:

x <- rnorm(500) # 500 нормальных величин со средним 0 и дисперсией 1
y <- rnorm(500) # 500 нормальных величин со средним 0 и дисперсией 1
qplot(x, y, main = "Точечки")

Или:

xy_df <- data.frame(x = x, y = y)
ggplot(xy_df) + geom_point(aes(x, y)) + labs(title = "Точечки")

В зависимости от формата данных часто бывает удобно использовать и qplot(), и ggplot().

У меня ошибка! {#error}

Чтобы узнать в каком пакете живет заданная функция, например lm, можно прямо спросить у R:

На самом верху справа документации будет написано lm {stats}. Это означает, что функция lm живёт в пакете stats.

Шеф! Всё пропало! Гипс снимают, клиент уезжает!

поговори с уточкой, посиди у озера

Ресурсы по R {#R_links}

Начнём с русскоязычных крупных книжек:

  • Шипунов А.Б., Балдин Е.М. и др. Наглядная статистика. Используем
    R! * Мастицкий С.Э.,
    Шитиков В.К., Статистический анализ и визуализация с помощью
    R
  • Василенко Є.С, Обробка геологiчної iнформацiї з використанням програмного
    середовища
    R

Кабаков Р.И. R в действии. Анализ и визуализация данных на языке
R

На русском также могут быть полезны:

  • Стилевое руководство гугла:
    english,
    русский
  • Блог r-analytics. На нём есть несколько
    других подборок русскоязычных ресурсов по R:
    раз и
    два. * Группа вконтакте
    rstatistics * Группа вконтакте
    spbrug * Группа вконтакте
    introstats * Венэбльз, Смит Введение в
    R
  • Зарядов И.С. Введение в R: часть
    1
  • Зарядов И.С. Введение в R: часть
    2
  • Борис Демешев Цикл маленьких заметок по
    R

Вопросы и ответы:

  • stackoverflow Если возникли проблемы с
    программированием в R (и не только в R), а документация уже прочитана…

  • stats.stackexchange Можно спросить по
    статистическим методам и их реализации в R.

  • tex.stackexchange Вопросы и ответы про LaTeX

Он-лайн курсы и видеолекции с использованием R:

  • Поисковик он-лайн курсов по R

  • Try R Путь к сокровищам R для самых начинающих
    пиRатов!

  • Основы программирования на R от stepik.org

  • Анализ данных в R от stepik.org

  • datacamp.com Несколько платных и бесплатных
    интерактивных курсов по R

  • Видео-лекции курса Computing for Data Analysis: неделя
    1,
    неделя
    2,
    неделя
    3,
    неделя
    4. Сам
    курс доступен на coursera.org

Открытые крупные источники на английском:

  • Trevor Hastie, Robert Tibshirani, An Introduction to Statistical
    Learning. По книжке есть курс на
    платформе
    class.standford.edu

  • Rob Hyndman, Forecasting: principles and
    practice Книжка по временным рядам от автора
    пакета forecast

  • Garrett Grolemund, Hadley Wickham, R for Data
    Science

  • Colin Gillespie, Robin Lovelace, Efficient R
    programming, он-лайн книга для
    более продвинутых пользователей R. Написана на R и markdown :)

  • Rob Kabacoff, Quick R

  • Farnsworth, Econometrics in
    R

  • Cookbook for R

  • R-inferno Адский
    учебник по R с картинками Ботичелли, «Even if it doesn’t help you with your
    problem, it might amuse you»

  • Roger Peng, R programming for data
    science и на
    bookdown

  • Introduction to R,
    Введение с официального сайта

  • документация по графикам ggplot2

  • документация к R от
    stats.stackexchange

  • Шикарные шпаргалки от
    Rstudio

  • 100 курсов и книг по
    R
    от разных университетов

  • Агрегатор блогов r-bloggers

  • Поисковик rseek.org

Великолепные виньетки к разным пакетам:

  • vars,
    векторные авторегрессии, есть вольный пересказ
    по-русски

  • dplyr манипуляции с данными

  • sandwich борьба с гетероскедастичностью и заклинания HC0, HC1, HC2, …

  • plm панельные
    модели в R

  • ggmap рисуем
    карты

  • vcd
    полезные графики для качественных переменных

  • Beanplot: A Boxplot Alternative for
    Visual Comparison of Distributions.

Ты ещё не заработал свой первый миллион и хочешь скачать научную статью или
книжку бесплатно?

  • Научные книги можно найти на gen.lib.rus.ec.

  • Научные статьи можно скачать на sci-hub.cc. Есть даже
    бот @scihubot для Telegram, которые вышлет в ответ на
    запрос полный текст статьи.

Если какая-нибудь ссылка не работает или хочешь предложить свою, смело открывай
issue на github!

R-studio — это набор программ для восстановления данных и файлов из жесткого диска. У приложения есть версии, как для Windows и Mac, так и для Linux. Программа платная, но имеет бесплатную версию, и считается одной из лучших программ для восстановления данных.

Программа проводит полный анализ диска и определяет какие файловые системы были на нем до этого, а затем позволяет восстановить файлы из этих файловых систем. Интересно, что можно обнаружить файловые системы, которые были на диске достаточно давно и даже из них восстановить файлы. Мы ранее рассматривали свободные утилиты для восстановления данных Linux, а в этой статье поговорим о том, как пользоваться R-Studio.

Вы можете скачать установщик программы для своей операционной системы на официальном сайте. Для Linux здесь есть deb и rpm пакеты, которые установятся в большинстве дистрибутивов.

Например, в Ubuntu, после того как пакет будет загружен, перейдите в папку загрузок и запустите установку:

cd ~/Загрузки/
$ sudo dpkg -i RStudio*

После завершения установки ярлык программы появится в главном меню:

В Windows вам будет достаточно пройти несколько шагов мастера.

Как пользоваться R-Studio

Теперь перейдем ближе к работе с утилитой, рассмотрим ее первый запуск интерфейс и восстановление файлов.

1. Запуск R-Studio

При первом запуске программа попросит лицензию. Не мне вам рассказывать где искать бесплатные лицензии, или можете нажать кнопку Demo. Для восстановления небольших файлов вполне сойдет. Максимальный размер файла для восстановления — 256 кб.

Если в окне программы полностью пусто, то нужно запускать ее через терминал с помощью такой команды:

 QT_X11_NO_MITSHM=1 rstudio

Теперь все должно работать.

2. Интерфейс R-Studio

Интерфейс программы достаточно типичен для такого рода утилит. Его можно разделить на такие части:

  • Главное меню — содержит все доступные действия и функции;
  • Панель инструментов — сюда вынесены основные функции программы;
  • Вкладки — переключение между различными областями;
  • Рабочая область — разделена на две части, в левой стороне находится список дисков или папок, а в правой подробная информация о них;
  • Статус бар — в самом низу окна находится статус бар, где отображаются сообщения о работе программы.

В рабочей области главного окна вы будете видеть список всех дисков и разделов. По умолчанию программа на английском, но вы можете выбрать русский язык. Для этого откройте меню «Help» -> «Language» и выберите «Русский»:

3. Простое восстановление

Напоминаю, что независимо от файловой системы, файлы не удаляются физически с диска во время удаления. Зато вы можете потерять их навсегда, если файловая система их чем-либо перезапишет. Если вы случайно удалили некоторые данные лучше сразу отключить этот жесткий диск от компьютера и проводить восстановление, подключив его в качестве внешнего диска к другому устройству. Мы можем просканировать весь раздел и определить все файловые системы, остатки которых на нем еще есть, но существует более простой способ. Можно работать только с этой файловой системой. Для этого просто выберите нужный раздел и нажмите на панели инструментов «Показать содержимое раздела»:

Все удаленные файлы будут помечены красным крестиком. Чтобы восстановить их будет достаточно нажать кнопку «Восстановить» на панели инструментов:

Далее, нужно только выбрать папку, куда будут восстановлены файлы. Ни в коем случае не восстанавливайте все на тот же раздел, это может стереть то, что еще можно было спасти.

3. Сканирование раздела

Если вы хотите восстановить все данные, нужно просканировать нужный раздел, чтобы обнаружить все файловые системы, которые там были и с которыми может работать утилита. Для этого выберите нужный раздел и нажмите кнопку «Сканировать». Этот процесс может занять длительное время, прогресс будет отображаться в правой части рабочей области:

После завершения сканирования вы увидите все доступные файловые системы. Выберите одну из них и нажмите «Показать содержимое диска». Кстати, та же опция доступна из контекстного меню:

Теперь, как и в предыдущем случае вы можете видеть все доступные файлы и те, которые можно восстановить помечены красным крестиком. Кроме того, вы можете отметить галочками нужные файлы в правой части и восстановить их группой:

Если это медиа файл или текстовый, то вы можете его открыть прямо в программе, без того, чтобы выполнить восстановление данных rstudio.

4. Поиск файлов

Очень часто в прошлых файловых системах очень запутанная структура каталогов и вы не всегда помните что и где находилось. Но в программе есть встроенные возможности поиска. Для настройки поиска нажмите «Найти/отменить»:

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

После завершения настройки нажмите «Ok». В правой части рабочей области будут отображены все найденные файлы и вы можете их восстановить.

5. Создание образов

Когда вы работаете с диском, на котором есть важные удаленные файлы, всегда есть риск что-то повредить. Поэтому вы можете создать образ и работать уже с ним. Для этого выберите на панели инструментов пункт «Создать образ»:

Процесс создания образа может занять достаточно долгое время. Затем вы можете выбрать пункт «Открыть образ» и продолжить работать с полученным образом как с обычным жестким диском.

Выводы

Теперь вы знаете как пользоваться r studio восстанавливаем данные. Удаление важных данных происходит не так часто. Но если это случится, то нужно иметь инструменты, с помощью которых вы смогли бы все вернуть. В этой статье мы рассмотрели как пользоваться программой R-Studio. Она самая популярная, но если у вас достаточно простая задача, то перед использованием этого инструмента можно попробовать свободные утилиты, такие как testdisk или photorec.

Видео про R-Studio в Ubuntu:

Creative Commons License

Статья распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна .

Понравилась статья? Поделить с друзьями:
  • Как прошить флешку для установки windows
  • Как работает windows на macbook air m1
  • Как работать с windows forms в visual studio 2019
  • Как прошить телефон на windows phone
  • Как работает windows на mac mini