get
位於 base
包(package)。 說明
按名稱搜索一個對象 ( get
) 或零個或多個對象 ( mget
)。
用法
get(x, pos = -1, envir = as.environment(pos), mode = "any",
inherits = TRUE)
mget(x, envir = as.environment(-1), mode = "any", ifnotfound,
inherits = FALSE)
dynGet(x, ifnotfound = , minframe = 1L, inherits = FALSE)
參數
x |
為了 |
pos, envir |
在哪裏尋找對象(參見“詳細信息”); if 省略搜索,就像對象的名稱出現在表達式中時未加引號一樣。 |
mode |
尋求對象的模式或類型:請參閱“詳細信息”部分。 |
inherits |
是否應該搜索環境的封閉框架? |
ifnotfound |
為了 |
minframe |
指定要查看的最小幀號的整數。 |
細節
pos
參數可以通過以下幾種方式指定查找對象的環境: 作為正整數(search
列表中的位置);作為搜索列表中元素的字符串名稱;或作為 environment
(包括使用 sys.frame
訪問當前活動的函數調用)。默認值 -1
表示調用 get
的當前環境。 envir
參數是指定環境的另一種方法。
這些函數查看每個名稱 x
是否在指定環境中都有綁定到它的值。如果inherits
是TRUE
並且在指定環境中未找到x
的值,則搜索環境的封閉框架,直到遇到名稱x
。有關環境及其 shell 結構的詳細信息,請參閱environment
和“R 語言定義”手冊。
如果指定了mode
,則僅查找該類型的對象。 mode
這裏混合了 typeof
和 mode
的含義: "function"
涵蓋原始函數和運算符, "numeric"
、 "integer"
和 "double"
均指任何數值類型, "symbol"
和"name"
等效,但必須使用 "language"
(而不是 "call"
或 "("
)。
對於 mget
, mode
和 ifnotfound
的值可以與 x
相同長度或長度為 1。參數 ifnotfound
必須是一個列表,其中包含要使用的值(如果請求的項目為未找到或具有一個參數的函數,如果未找到該項目,將調用該函數,參數為所請求的項目的名稱。
dynGet()
有點實驗性,可在另一個函數中使用。它在調用者中查找對象,即函數的 sys.frame()
。謹慎使用。
值
對於 get
,找到的對象。如果沒有找到對象,則會產生錯誤。
對於 mget
,對象的命名列表(通過 ifnotfound
找到或指定)。
注意
a <- get(nam)
的逆向(或 “inverse”)是 assign(nam, a)
,將 a
分配給名稱 nam
。
inherits = TRUE
是默認值get
在R但對於 S 則不然,它有不同的含義。
例子
get("%o%")
## test mget
e1 <- new.env()
mget(letters, e1, ifnotfound = as.list(LETTERS))
參考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
也可以看看
exists
用於檢查對象是否存在; get0
用於檢查存在性和獲取對象的有效方法。
assign
,get()
的逆,見上文。
使用 getAnywhere
在任何地方(包括其他命名空間)搜索對象,並使用 getFromNamespace
在特定命名空間中查找對象。
相關用法
- R getwd 獲取或設置工作目錄
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R getLoadedDLLs 獲取當前會話中加載的 DLL
- R gettext 翻譯短信
- R getNativeSymbolInfo 獲取一個或多個本機 (C/Fortran) 符號的說明
- R grep 模式匹配和替換
- R gzcon 通過連接(解)壓縮 I/O
- R groupGeneric S3組通用函數
- R gc 垃圾收集
- R gl 生成因子水平
- R grouping 分組排列
- R gc.time 報告垃圾收集所花費的時間
- R grepRaw 原始向量的模式匹配
- R gctorture 酷刑垃圾收集者
- R file.path 構造文件路徑
- R vector 向量 - 創建、強製等
- R lapply 對列表或向量應用函數
- R dump R 對象的文本表示
- R Sys.getenv 獲取環境變量
- R rank 樣本排名
- R pushBack 將文本推回連接
- R strsplit 分割字符向量的元素
- R seq.Date 生成規則的日期序列
- R invisible 將打印模式更改為不可見
- R noquote “無引號”字符串打印類
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Return the Value of a Named Object。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。