Переменная предоставляет нам именованное хранилище, которым наши программы могут манипулировать. Переменная в R может хранить атомный вектор, группу атомных векторов или комбинацию множества роботов. Допустимое имя переменной состоит из букв, цифр и символов точки или подчеркивания. Имя переменной начинается с буквы или точки, за которой не следует число.
Имя переменной | Период действия | причина |
---|---|---|
var_name2. | действительный | Имеет буквы, цифры, точку и подчеркивание |
var_name% | Недействительным | Имеет символ «%». Допускается только точка (.) И подчеркивание. |
2var_name | недействительным | Начинается с числа |
.var_name, var.name |
действительный | Может начинаться с точки (.), Но за точкой (.) Не должно следовать число. |
.2var_name | недействительным | За начальной точкой следует число, делающее его недействительным. |
_var_name | недействительным | Начинается с _, что недопустимо |
.var_name,
var.name
Назначение переменной
Переменным можно присваивать значения, используя левую, правую и равные оператору. Значения переменных могут быть напечатаны с использованием функции print () или cat () . Функция cat () объединяет несколько элементов в непрерывный вывод на печать.
# Assignment using equal operator. var.1 = c(0,1,2,3) # Assignment using leftward operator. var.2 <- c("learn","R") # Assignment using rightward operator. c(TRUE,1) -> var.3 print(var.1) cat ("var.1 is ", var.1 ,"\n") cat ("var.2 is ", var.2 ,"\n") cat ("var.3 is ", var.3 ,"\n")
Когда мы выполняем приведенный выше код, он дает следующий результат —
[1] 0 1 2 3 var.1 is 0 1 2 3 var.2 is learn R var.3 is 1 1
Примечание . Вектор c (TRUE, 1) имеет сочетание логического и числового классов. Таким образом, логический класс приведен к числовому классу, делающему TRUE в 1.
Тип данных переменной
В R сама переменная не объявляется ни для какого типа данных, скорее она получает тип данных назначенного ей R-объекта. Таким образом, R называется динамически типизированным языком, что означает, что мы можем снова и снова изменять тип данных переменной для той же переменной при использовании его в программе.
var_x <- "Hello" cat("The class of var_x is ",class(var_x),"\n") var_x <- 34.5 cat(" Now the class of var_x is ",class(var_x),"\n") var_x <- 27L cat(" Next the class of var_x becomes ",class(var_x),"\n")
Когда мы выполняем приведенный выше код, он дает следующий результат —
The class of var_x is character Now the class of var_x is numeric Next the class of var_x becomes integer
Поиск переменных
Чтобы узнать все переменные, доступные в данный момент в рабочей области, мы используем функцию ls () . Также функция ls () может использовать шаблоны для сопоставления имен переменных.
print(ls())
Когда мы выполняем приведенный выше код, он дает следующий результат —
[1] "my var" "my_new_var" "my_var" "var.1" [5] "var.2" "var.3" "var.name" "var_name2." [9] "var_x" "varname"
Примечание. Это пример вывода в зависимости от того, какие переменные объявлены в вашей среде.
Функция ls () может использовать шаблоны для сопоставления имен переменных.
# List the variables starting with the pattern "var". print(ls(pattern = "var"))
Когда мы выполняем приведенный выше код, он дает следующий результат —
[1] "my var" "my_new_var" "my_var" "var.1" [5] "var.2" "var.3" "var.name" "var_name2." [9] "var_x" "varname"
Переменные, начинающиеся с точки (.) , Скрыты, их можно перечислить с помощью аргумента «all.names = TRUE» функции ls ().
print(ls(all.name = TRUE))
Когда мы выполняем приведенный выше код, он дает следующий результат —
[1] ".cars" ".Random.seed" ".var_name" ".varname" ".varname2" [6] "my var" "my_new_var" "my_var" "var.1" "var.2" [11]"var.3" "var.name" "var_name2." "var_x"
Удаление переменных
Переменные могут быть удалены с помощью функции rm () . Ниже мы удаляем переменную var.3. При печати значение переменной выдается.
rm(var.3) print(var.3)
Когда мы выполняем приведенный выше код, он дает следующий результат —
[1] "var.3" Error in print(var.3) : object 'var.3' not found
Все переменные могут быть удалены с помощью функции rm () и ls () вместе.
rm(list = ls()) print(ls())
Когда мы выполняем приведенный выше код, он дает следующий результат —