Начало работы со средой R. Начало работы со средой r studio. Основы работы
Скачать 23.53 Kb.
|
Начало работы со средой R – studio. Основы работы Откроем среду R – studio. В консольном окне будет такая надпись: R version 4.0.5 (2021-03-31) -- "Shake and Throw" Copyright (C) 2021 The R Foundation for Statistical Computing Platform: i386-w64-mingw32/i386 (32-bit) R -- это свободное ПО, и оно поставляется безо всяких гарантий. Вы вольны распространять его при соблюдении некоторых условий. Введите 'license()' для получения более подробной информации. R -- это проект, в котором сотрудничает множество разработчиков. Введите 'contributors()' для получения дополнительной информации и 'citation()' для ознакомления с правилами упоминания R и его пакетов в публикациях. Введите 'demo()' для запуска демонстрационных программ, 'help()' – для получения справки, 'help.start()' -- для доступа к справке через браузер. Введите 'q()', чтобы выйти из R. Можно использовать среду в качестве калькулятора. Например, посчитать сумму 2 чисел: > 5+6 [1] 11 Или найти факториал числа 10: > factorial(10) [1] 3628800 Можно присвоить значение переменной b: > b <- 11 Можно присваивать значения переменным и другими способами: > d = 99 > 5 -> a Найдём сумму чисел, записанных в переменные а и b: > a + b [1] 16 Присвоим переменной А значение и найдём сумму его и числа а: > A <- 55 > a + A [1] 60 В R предусмотрена работа с табуляцией. Введём переменную moe_lubimoe_chislo и присвоим ей значение: > moe_lubimoe_chislo <- 12 Теперь начнём вводить начало названия этой переменной, затем остановимся и нажмём клавишу Tab, а затем Enter: > moe_lubimoe_chislo [1] 12 В R удобно работать с векторами. Создадим вектор у: > y <- c(3,-2,5,6,NA,9) > y [1] 3 -2 5 6 NA 9 Прибавим вектору число: > y + 2 [1] 5 0 7 8 NA 11 Попробуем поделить 0 на 0: > 0/0 [1] NaN > t <- 0/0 > t [1] NaN Попробуем вывести бесконечность: > 1/0 [1] Inf Теперь попробуем поделить число на бесконечность: > 1/Inf [1] 0 Найдём арктангенс бесконечности: > atan(Inf) [1] 1.570796 Ожидаемый результат, поскольку тангенс 90 градусов равен бесконечности. Убедимся в этом ещё раз: > pi/2 [1] 1.570796 Также можно создать вектор, как последовательность чисел от начального до конечного значения. Создадим вектор z целых чисел от 100 до 200: > z <- 100:200 > z [1] 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 [19] 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 [37] 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 [55] 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 [73] 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 [91] 190 191 192 193 194 195 196 197 198 199 200 Если пользователь введёт несуществующую команду, программа выдаст сообщение об ошибке: > coss(pi) Ошибка в coss(pi) :не могу найти функцию "coss" > cos(pi) [1] -1 Если ввод команды не закончен, на нажата кнопка Enter, на следующей строчке отобразится знак «+», после которого можно будет ввести недостающие символы: > cos(pi + ) [1] -1 > 5+6+7-9+ + 10+7 [1] 26 Если пользователь решит, что больше не надо ничего вводить, то на строчке со знаком «+» можно нажать Escape, чтобы со следующей строки можно было ввести новую команду «с нуля»: > cos(pi) + sin( + > Попробуем написать скрипт. Нажимаем на диалоговое окно «Файл» в левом верхнем углу программы, выбираем «Создать новый скрипт» и нажимаем, в результаты чего появится дополнительное окошко. Это файл для написания скрипта, конкретно в нём никакие команды не выполняются. Создадим тут 2 вектора: x <- c(23,15,46,NA) z <- c(5,6,NA,8) Затем нажимаем на диалоговое окно «Файл» в левом верхнем углу окна, нажимаем «Сохранить», называем его 1 и сохраняем. Наводим курсор на первую строку, нажимаем на диалоговое окно «Правка», выбираем «Запустить строку или блок»: > x <- c(23,15,46,NA) Теперь то же самое проделаем для второго вектора: > z <- c(5,6,NA,8) Найдём среднее значение векторов. Допишем нужные строки в скрипт: mean(x) mean(x,na.rm = TRUE) mean(z,na.rm = TRUE) Последняя строка позволяют не считать значение NA. Результат выполнения кода: > mean(x,na.rm = TRUE) [1] 28 > mean(z,na.rm = TRUE) [1] 6.333333 Запишем команду суммы вектора x: sum(x) Результат её выполнения: > sum(x) [1] NA Теперь запишем то же самое, но с учётом игнорирования пропущенного значения: > sum(x,na.rm = TRUE) [1] 84 Теперь создадим таблицу из ранее созданных векторов: d <- data.frame(rost = x, ves = z) d Выполним эти строчки кода: > d <- data.frame(rost = x, ves = z) > d rost ves 1 23 5 2 15 6 3 46 NA 4 NA 8 Выведем элемент 4 строки 1 столбца: d[4,1] > d[4,1] [1] NA Выведем элемент 3 строки 1 столбца: d[3,1] > d[3,1] [1] 46 Выведем всю 2 строчку: d[2,] > d[2,] rost ves 2 15 6 Выведем весь 2 столбец: d[,2] > d[,2] [1] 5 6 NA 8 Посмотрим столбцы по их именам: d$rost d$ves > d$rost [1] 23 15 46 NA > d$ves [1] 5 6 NA 8 Если в таблицах есть номера строк и столбцов, то так же в R есть списки, элементы которых могут быть разнородными. Например, создадим список my_list, который будет состоять из числа, вектора и таблицы: my_list <- list(a = 7, b = 10:20, table = d): > my_list <- list(a = 7, b = 10:20, table = d) my_list$a my_list$b my_list$table > my_list$a [1] 7 > my_list$b [1] 10 11 12 13 14 15 16 17 18 19 20 > my_list$table rost ves 1 23 5 2 15 6 3 46 NA 4 NA 8 Выведем столбец со значениями роста: d$rost > d$rost [1] 23 15 46 NA Выведем второй элемент списка my_list: my_list[[2]] > my_list[[2]] [1] 10 11 12 13 14 15 16 17 18 19 20 Комментарии в скрипте начинаются со знака «#»: # Ура! Можно устанавливать пакеты. Нажимаем на диалоговое меню «Пакеты», выбираем «Установить пакеты». Выбираем dplyr, ggplot2, GGally, psych. Зная имя создателя пакета на Github и название самого пакета можно также загрузить пакет оттуда. Вот примерные строчки скрипта: library(«devtools») install_github(«bdemeshev/sophisthse») |