Типы данных в R (RStudio)
Автор: Kamila Kulzhanova • Апрель 22, 2018 • Лекция • 6,170 Слов (25 Страниц) • 815 Просмотры
[pic 1]
Федеральное государственное образовательное бюджетное учреждение
высшего образования
«ФИНАН
«ФИНАНСОВЫЙ УНИВЕРСИТЕТ ПРИ ПРАВИТЕЛЬСТВЕ
РОССИЙСКОЙ ФЕДЕРАЦИИ»
Департамент анализа данных, принятия решений и финансовых технологий
С.А.Зададаев
Типы данных в R (RStudio)
Учебно-методические рекомендации для проведения
семинара №22 по компьютерному практикуму
Для бакалавров направления 38.03.01 «Экономика»
Электронное издание
Москва 2017
Типы данных в R (RStudio)
Пришло время систематизировать важнейшие компоненты языка R. В первую очередь подробно разберемся с основными типами данных, хотя ранее некоторые из них нам уже встречались, среди которых были и достаточно специфические типы, например, expression или language.
Запустим RStudio и создадим новый файл с будущим кодом программы путем нажатия комбинации Ctrl+Shift+Enter.
R – динамически типизированный язык
R, действительно, является динамически типизированным языком. Это утверждение может повергнуть в ужас любого программиста и одновременно вызвать восторг у любого другого пользователя. Связано это вот с чем: во-первых, тип у каждой переменной в R может меняться во время выполнения программы даже против желания пользователя, и во-вторых, тип каждой переменной фактически вообще не объявляется, а наследуется от типа объекта, которому присваивается переменная. То есть в отличие от обычных языков программирования (C++, Pascal,…) в R переменные во время объявления не резервируются в памяти своим типом, а вводятся кодом сразу под видом конкретно заданных объектов (значений), чей тип и наследуют.
Поясним эту интересную и основополагающую особенность языка R на следующем примере.
Задание 1. Объявить переменную n, в которую записать число 2.
Решение. Введем следующий код в левом верхнем окне программы:
n <- 2 # Объявляем переменную n, равную 2
n # Выводим на экран текущее значение n
typeof(n) # Выясняем какому типу относится переменная n
В результате выполнения этого кода в R будет сформирована переменная n, типом которой будет являться максимально широкий в данном контексте тип double – вещественное число двойной точности:
[pic 2]
(Для увеличения картинки удерживаем Ctrl и крутим колесико мыши)
Если же мы хотим видеть в переменной n не вещественное число, а исключительно целое, то нам следует переопределить (исправить) тип переменной n:
n <- as.integer(n) # Переопределяем переменную n как целое число
n # Выводим на экран текущее значение n
typeof(n) # Выясняем какому типу относится переменная n
[pic 3]
Отметим, что такое положение является достаточно удобным. Если нам не важно к какому типу соотнести число 2, то R автоматически определяет его к произвольному вещественному числу, ничем не ограничивая дальнейшее оперирование с ним.
Атомарные данные
Задание 2. Объявить в R переменные основных типов, присвоив им какие-либо подходящие значения.
Решение. Выделим шесть основных типов атомарных данных в R и для каждого из них объявим соответствующую переменную. Мы использовали здесь термин атомарные данные, т.к. помимо них существуют еще и многомерные данные: векторы, массивы, матрицы, списки,... – о них чуть позже.
Логический тип (logical)
Переменные данного типа, их называют еще булевыми, могут принимать только два различных значения: TRUE и FALSE («Правда» и «Ложь»). Если такую булеву переменную переопределить по типу в целую (integer) или вещественную (double), то значение TRUE будет конвертировано в единицу, а FALSE – в ноль.
...