R語言關於變量的知識點總結
變量為我們提供瞭我們的程序可以操作的命名存儲。 R語言中的變量可以存儲原子向量,原子向量組或許多Robject的組合。 有效的變量名稱由字母,數字和點或下劃線字符組成。 變量名以字母或不以數字後跟的點開頭。
變量名 | 合法性 | 原因 |
---|---|---|
var_name2. | 有效 | 有字母,數字,點和下劃線 |
VAR_NAME% | 無效 | 有字符’%’。隻有點(.)和下劃線允許的。 |
2var_name | 無效 | 以數字開頭 |
.var_name, var.name |
有效 | 可以用一個點(.),但啟動點(.),不應該後跟一個數字。 |
.2var_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 ," ") cat ("var.2 is ", var.2 ," ") cat ("var.3 is ", var.3 ," ")
當我們執行上面的代碼,它產生以下結果 –
[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)," ") var_x <- 34.5 cat(" Now the class of var_x is ",class(var_x)," ") var_x <- 27L cat(" Next the class of var_x becomes ",class(var_x)," ")
當我們執行上面的代碼,它產生以下結果 –
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"
以點(.)開頭的變量被隱藏,它們可以使用ls()函數的“all.names = TRUE”參數列出。
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())
當我們執行上面的代碼,它產生以下結果 –
character(0)
到此這篇關於R語言關於變量的知識點總結的文章就介紹到這瞭,更多相關R語言變量內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- R語言變量賦值深入講解
- python 實現以相同規律打亂多組數據
- Python中的sys模塊、random模塊和math模塊
- Python隨機數種子(random seed)的使用
- 淺析Python中的隨機采樣和概率分佈