expression
位於 base
包(package)。 說明
創建或測試模式和類 "expression"
的對象。
用法
expression(...)
is.expression(x)
as.expression(x, ...)
參數
... |
|
x |
任意的R對象。 |
細節
這裏的“表達式”並不是其口語意義上的數學表達式。這些是調用(參見call
) 在R, 和R表達式向量是調用、符號等的列表,例如由parse
.
由於 "expression"
模式的對象是一個列表,因此可以通過 [
、 [[
或 $
進行子集化,後兩者提取單獨的調用等。這些運算符的替換形式可以用於替換或刪除元素。
expression
和is.expression
是primitive 函數。 expression
是 ‘special’:它不評估其參數。
值
expression
返回包含其參數(未計算)的 "expression"
類型向量。
如果 expr
是表達式對象,則 is.expression
返回 TRUE
,否則返回 FALSE
。
as.expression
嘗試將其參數強製轉換為表達式對象。它是通用的,這裏隻說明默認方法。 (默認方法調用 as.vector(type = "expression")
,因此可以為 as.vector
調度方法。) NULL
、調用、符號(請參閱 as.symbol
)和配對列表作為長度為 1 的表達式向量的元素返回。原子向量被逐個元素放入表達式向量中(不使用任何名稱): list
的類型 ( typeof
) 更改為表達式向量(保留所有屬性)。目前不支持其他類型。
例子
length(ex1 <- expression(1 + 0:9)) # 1
ex1
eval(ex1) # 1:10
length(ex3 <- expression(u, 2, u + 0:9)) # 3
mode(ex3 [3]) # expression
mode(ex3[[3]]) # call
## but not all components are 'call's :
sapply(ex3, mode ) # name numeric call
sapply(ex3, typeof) # symbol double language
rm(ex3)
參考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
也可以看看
相關用法
- R expand.grid 從因子變量的所有組合創建 DataFrame
- R exists 是否已定義對象?
- R extSoftVersion 第三方軟件的報告版本
- R eval 計算(未計算的)表達式
- R environment 環境接入
- R eapply 將函數應用於環境中的值
- R eigen 矩陣的譜分解
- R encodeString 對字符向量進行編碼以供打印
- R file.path 構造文件路徑
- R grep 模式匹配和替換
- R getwd 獲取或設置工作目錄
- R vector 向量 - 創建、強製等
- R lapply 對列表或向量應用函數
- R dump R 對象的文本表示
- R Sys.getenv 獲取環境變量
- R rank 樣本排名
- R getDLLRegisteredRoutines DLL 中 C/Fortran 例程的反射信息
- R pushBack 將文本推回連接
- R strsplit 分割字符向量的元素
- R seq.Date 生成規則的日期序列
- R invisible 將打印模式更改為不可見
- R noquote “無引號”字符串打印類
- R warning 警告信息
- R rapply 遞歸地將函數應用於列表
- R basename 操作文件路徑
注:本文由純淨天空篩選整理自R-devel大神的英文原創作品 Unevaluated Expressions。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。