r語言 列出所有變量


你希望知道目前工作空間中存在哪些已定義的變量和函數。

解決方案

使用ls函數,或者使用ls.str函數了解每個變量更詳細的信息。

討論

ls函數可以顯示當前工作空間中所有對象的名稱:
> x <- 10
> y <- 50
> z <- c("three", "blind", "mice")
> f <- function(n,p) sqrt(p*(1-p)/n)
> ls()
[1] "f" "x" "y" "z"

注意,ls函數輸出的結果是一個字符串向量,其中向量的每個元素代表一個變量名。當工作空間中沒有已定義的變量時,函數ls會返回一個空向量,它會產生如下令人迷惑的結果:
> ls()
character(0)

事實上,R軟件采用這樣的方式向用戶說明,ls函數返回一個長度為0的字符串向量;即工作空間中不含有任何已定義變量。

如果你除了變量名稱以外還想對變量有更多的了解,那么你可以使用ls.str函數,該函數會返回變量的一些其他信息:
> ls.str()
f : function (n, p) 
x :  num 10
y :  num 50
z :  chr [1:3] "three" "blind" "mice"

ls.str函數之所以寫為ls.str,原因在於其功能既顯示了所有變量的名稱,又對所有變量使用了str函數,方法12.15對此進行了詳細的說明。

ls函數不會顯示以點(.)開頭的變量名,以點開頭的變量一般作為隱藏變量不為用戶所知(這一輸出規定來源於UNIX系統)。在R軟件中,可以通過將ls.str函數中的all.names參數設定為TRUE,強制列出所有變量:
> .hidvar <- 10
> ls()
[1] "f" "x" "y" "z"
> ls(all.names=TRUE)
[1] ".hidvar" "f"       "x"       "y"       "z"

另請參閱

方法2.4介紹了如何刪除變量,方法12.15介紹了如何檢查某一變量。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM