R語(yǔ)言關(guān)于變量的知識(shí)點(diǎn)總結(jié)
變量為我們提供了我們的程序可以操作的命名存儲(chǔ)。 R語(yǔ)言中的變量可以存儲(chǔ)原子向量,原子向量組或許多Robject的組合。 有效的變量名稱(chēng)由字母,數(shù)字和點(diǎn)或下劃線字符組成。 變量名以字母或不以數(shù)字后跟的點(diǎn)開(kāi)頭。
| 變量名 | 合法性 | 原因 |
|---|---|---|
| var_name2. | 有效 | 有字母,數(shù)字,點(diǎn)和下劃線 |
| VAR_NAME% | 無(wú)效 | 有字符'%'。只有點(diǎn)(.)和下劃線允許的。 |
| 2var_name | 無(wú)效 | 以數(shù)字開(kāi)頭 |
| .var_name, var.name |
有效 | 可以用一個(gè)點(diǎn)(.),但啟動(dòng)點(diǎn)(.),不應(yīng)該后跟一個(gè)數(shù)字。 |
| .2var_name | 無(wú)效 | 起始點(diǎn)后面是數(shù)字使其無(wú)效。 |
| _var_name | 無(wú)效 | 開(kāi)頭_這是無(wú)效的 |
變量賦值
可以使用向左,向右和等于運(yùn)算符來(lái)為變量分配值。 可以使用print()或cat()函數(shù)打印變量的值。 cat()函數(shù)將多個(gè)項(xiàng)目組合成連續(xù)打印輸出。
# 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 ,"
")
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
[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)具有邏輯和數(shù)值類(lèi)的混合。 因此,邏輯類(lèi)強(qiáng)制轉(zhuǎn)換為數(shù)字類(lèi),使TRUE為1。
變量的數(shù)據(jù)類(lèi)型
在R語(yǔ)言中,變量本身沒(méi)有聲明任何數(shù)據(jù)類(lèi)型,而是獲取分配給它的R - 對(duì)象的數(shù)據(jù)類(lèi)型。 所以R稱(chēng)為動(dòng)態(tài)類(lèi)型語(yǔ)言,這意味著我們可以在程序中使用同一個(gè)變量時(shí),一次又一次地更改變量的數(shù)據(jù)類(lèi)型。
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),"
")
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
The class of var_x is character Now the class of var_x is numeric Next the class of var_x becomes integer
查找變量
要知道工作空間中當(dāng)前可用的所有變量,我們使用ls()函數(shù)。 ls()函數(shù)也可以使用模式來(lái)匹配變量名。
print(ls())
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
[1] "my var" "my_new_var" "my_var" "var.1" [5] "var.2" "var.3" "var.name" "var_name2." [9] "var_x" "varname"
注意 - 它是一個(gè)示例輸出,取決于在您的環(huán)境中聲明的變量。
ls()函數(shù)可以使用模式來(lái)匹配變量名。
# List the variables starting with the pattern "var". print(ls(pattern = "var"))
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
[1] "my var" "my_new_var" "my_var" "var.1" [5] "var.2" "var.3" "var.name" "var_name2." [9] "var_x" "varname"
以點(diǎn)(.)開(kāi)頭的變量被隱藏,它們可以使用ls()函數(shù)的“all.names = TRUE”參數(shù)列出。
print(ls(all.name = TRUE))
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
[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()函數(shù)刪除變量。 下面我們刪除變量var.3。 打印時(shí),拋出變量錯(cuò)誤的值。
rm(var.3) print(var.3)
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
[1] "var.3" Error in print(var.3) : object 'var.3' not found
所有的變量可以通過(guò)使用rm()和ls()函數(shù)一起刪除。
rm(list = ls()) print(ls())
當(dāng)我們執(zhí)行上面的代碼,它產(chǎn)生以下結(jié)果 -
character(0)
到此這篇關(guān)于R語(yǔ)言關(guān)于變量的知識(shí)點(diǎn)總結(jié)的文章就介紹到這了,更多相關(guān)R語(yǔ)言變量?jī)?nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
R語(yǔ)言與格式,日期格式,格式轉(zhuǎn)化的操作
這篇文章主要介紹了R語(yǔ)言與格式,日期格式,格式轉(zhuǎn)化的操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04
利用R語(yǔ)言合并數(shù)據(jù)框的行與列實(shí)例代碼
實(shí)際操作中我們經(jīng)常需要引入其他表中的列,即將其他表中列加入到表中,需要把兩個(gè)或者更多的表合并成一個(gè),下面這篇文章主要給大家介紹了關(guān)于利用R語(yǔ)言合并數(shù)據(jù)框的行與列的相關(guān)資料,需要的朋友可以參考下2022-07-07
R語(yǔ)言中assign函數(shù)和get函數(shù)的用法
這篇文章主要介紹了R語(yǔ)言中assign函數(shù)和get函數(shù)的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04
R語(yǔ)言服務(wù)器安裝R包實(shí)現(xiàn)過(guò)程
這篇文章主要為大家介紹了R語(yǔ)言在服務(wù)器安裝R包的實(shí)現(xiàn)過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2021-11-11
R語(yǔ)言中循環(huán)的相關(guān)知識(shí)詳解
這篇文章主要為大家詳細(xì)介紹了R語(yǔ)言中循環(huán)的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)R語(yǔ)言有一定的幫助,感興趣的可以了解一下2023-03-03
R語(yǔ)言隨機(jī)數(shù)生成的實(shí)現(xiàn)
這篇文章主要介紹了R語(yǔ)言隨機(jī)數(shù)生成的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03
R語(yǔ)言驗(yàn)證及協(xié)方差的計(jì)算公式
這篇文章主要介紹了R語(yǔ)言驗(yàn)證及協(xié)方差的計(jì)算公式的相關(guān)資料,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-03-03
R語(yǔ)言-計(jì)算平均值不同函數(shù)的區(qū)別說(shuō)明
這篇文章主要介紹了R語(yǔ)言-計(jì)算平均值不同函數(shù)的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04

