R - Değişkenler

Bir değişken, programlarımızın değiştirebileceği adlandırılmış depolama alanı sağlar. R'deki bir değişken bir atomik vektörü, atomik vektörler grubunu veya birçok Robject'in bir kombinasyonunu depolayabilir. Geçerli bir değişken adı harflerden, sayılardan ve nokta veya altı çizili karakterlerden oluşur. Değişken adı bir harfle veya noktadan sonra bir sayı gelmeden başlar.

Değişken ismi Geçerlilik Nedeni
var_name2. geçerli Harf, sayı, nokta ve alt çizgi içerir
var_name% Geçersiz '%' Karakterine sahiptir. Yalnızca nokta (.) Ve alt çizgiye izin verilir.
2var_name geçersiz Bir sayı ile başlar

.var_name,

var.name

geçerli Bir nokta (.) İle başlayabilir ancak noktanın (.) Ardından bir sayı gelmemelidir.
.2var_name geçersiz Başlangıç ​​noktasının ardından onu geçersiz kılan bir sayı gelir.
_var_name geçersiz Geçerli olmayan _ ile başlar

Değişken Atama

Değişkenler, sola, sağa ve operatöre eşit kullanılarak değerler atanabilir. Değişkenlerin değerleri kullanılarak yazdırılabilirprint() veya cat()işlevi. cat() işlevi, birden çok öğeyi sürekli bir baskı çıktısında birleştirir.

# 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")

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

[1] 0 1 2 3
var.1 is  0 1 2 3 
var.2 is  learn R 
var.3 is  1 1

Note- c (DOĞRU, 1) vektörü mantıksal ve sayısal sınıfın bir karışımına sahiptir. Dolayısıyla mantıksal sınıf, 1 olarak DOĞRU yapan sayısal sınıfa zorlanır.

Bir Değişkenin Veri Türü

R'de, bir değişkenin kendisi herhangi bir veri türünden bildirilmez, bunun yerine kendisine atanan R nesnesinin veri türünü alır. Dolayısıyla R'ye dinamik olarak yazılmış bir dil denir, bu da bir değişkenin aynı değişkenin veri türünü bir programda kullanırken tekrar tekrar değiştirebileceğimiz anlamına gelir.

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")

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

The class of var_x is  character 
   Now the class of var_x is  numeric 
      Next the class of var_x becomes  integer

Değişkenleri Bulmak

Çalışma alanında şu anda mevcut olan tüm değişkenleri bilmek için ls()işlevi. Ayrıca ls () işlevi, değişken adlarını eşleştirmek için kalıpları kullanabilir.

print(ls())

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

[1] "my var"     "my_new_var" "my_var"     "var.1"      
[5] "var.2"      "var.3"      "var.name"   "var_name2."
[9] "var_x"      "varname"

Note - Ortamınızda hangi değişkenlerin bildirildiğine bağlı olarak örnek bir çıktıdır.

Ls () işlevi, değişken adlarını eşleştirmek için kalıpları kullanabilir.

# List the variables starting with the pattern "var".
print(ls(pattern = "var"))

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

[1] "my var"     "my_new_var" "my_var"     "var.1"      
[5] "var.2"      "var.3"      "var.name"   "var_name2."
[9] "var_x"      "varname"

İle başlayan değişkenler dot(.) gizlidirler, ls () işlevinin "all.names = TRUE" bağımsız değişkeni kullanılarak listelenebilir.

print(ls(all.name = TRUE))

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

[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"

Değişkenleri Silme

Değişkenler kullanılarak silinebilir rm()işlevi. Aşağıda var.3 değişkenini siliyoruz. Baskı sırasında değişken hatanın değeri atılır.

rm(var.3)
print(var.3)

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

[1] "var.3"
Error in print(var.3) : object 'var.3' not found

Tüm değişkenler kullanılarak silinebilir rm() ve ls() birlikte çalışır.

rm(list = ls())
print(ls())

Yukarıdaki kodu çalıştırdığımızda şu sonucu verir -

character(0)