01 Пр Основные операторы R. Занятие 01. Введение в r содержание установка пакета 1
Скачать 1.34 Mb.
|
4. R – калькуляторПеречислим основные математические функции, набрав которые в качестве кода, мы мгновенно получим вычисленные значения: sin(2); cos(2); tan(2); asin(0.5); acos(0.5); atan(2); log(0.3); log(1024, 2); exp(2); log10(4); sinh(2); cosh(2); tanh(2); asinh(2); acosh(2); atanh(1/2); Замечание. Здесь и далее условно в качестве аргументов функций взяты произвольные числа. Обратим особое внимание, что в R принято использовать точку в качестве десятичного разделителя. Расшифруем некоторые из приведенных функций: exp(2) # Экспонента от 2, log(1024, 2) # Логарифм 1024 по основанию 2, log(0.3) # Натуральный логарифм числа 0.3, abs(-5) # Модуль от -5, atan2(0,-3) # Угол между осью ox и вектором (-3,0) / здесь x,y наоборот! 2**3; 2^3 # Возведение в степень 2 в 3, / возможны оба варианта sqrt(4) # Корень из 4, factorial(5) # Факториал числа 5, 5!=1*2*3*4*5 choose(5,3) # Число сочетаний 3 из 5: pi # Число π exp(1) # Число Полезны также функции округления (представление чисел): round(1.0023857, 6) # Округляет число 1.0023857 до 6 знака после запятой включ. signif(1.0023857, 6) # Округляет число 1.0023857 до 6 значащих цифр включ. trunc(-3.999) # Отсечение дробной части -3.999 floor(-4.2) # Наибольшее целое, не превосходящее -4.2 В R сама переменная не объявляется ни для какого типа данных, скорее она получает тип данных назначенного ей R-объекта. Таким образом, R называется динамически типизированным языком, что означает, что мы можем снова и снова изменять тип данных переменной для той же переменной при использовании его в программе. Пример: var_x <- "Hello" cat("Класс переменной var_x ",class(var_x),"\n") var_x <- 34.5 cat(" Теперь класс var_x ",class(var_x),"\n") var_x <- 27L cat(" Далее класс var_x становится",class(var_x),"\n") Когда мы выполняем приведенный выше код, он дает следующий результат – Класс переменной var_x character Теперь класс var_x numeric Далее класс var_x становится integer Чтобы узнать все переменные, доступные в данный момент в рабочей области, мы используем функцию ls() . Также функция ls() может использовать шаблоны для сопоставления имен переменных. Пример: print(ls()) Когда мы выполняем приведенный выше код, он дает следующий результат – [1] "var.1" "var.2" "var.3" "var_x" Точность вычислений Помимо округления числовых результатов может встать обратная необходимость в повышении точности. Следующая команда позволяет повысить выводимую точность double-арифметики до 22 используемых цифр/разрядов в записи числа (параметр digits): options(digits=12) # Установка максимального количества используемых цифр 12 Для получения еще большей точности следует использовать специализированные пакеты, например, пакет "Rmpfr", справка по которому станет доступна из RStudio после стандартной установки пакета из репозитория. |