deparse
位于 base
包(package)。 说明
将未计算的表达式转换为字符串。
用法
deparse(expr, width.cutoff = 60L,
backtick = mode(expr) %in% c("call", "expression", "(", "function"),
control = c("keepNA", "keepInteger", "niceNames", "showAttributes"),
nlines = -1L)
deparse1(expr, collapse = " ", width.cutoff = 500L, ...)
参数
expr |
任何R表达。 |
width.cutoff |
中的整数确定尝试 line-breaking 的截止值(以字节为单位)。 |
backtick |
逻辑指示如果符号名称不遵循标准语法,是否应将其括在反引号中。 |
control |
解析选项的字符向量(或 |
nlines |
整数:要生成的最大行数。负值表示没有限制。 |
collapse |
一个字符串,传递给 |
... |
进一步的参数传递给 |
细节
这些函数将未计算的表达式(其中 ‘expression’ 的含义比 mode
和 expression
中使用的类型 ( typeof
) "expression"
的向量的严格概念更广泛)转换为字符串(一种与 parse
相反)。
其典型用途是为数据集和绘图创建信息标签。该示例展示了此函数的简单用法。它使用函数 deparse
和 substitute
为绘图创建标签,这些标签是函数 myplot
的实际参数的字符串版本。
backtick
选项的默认设置是不引用单个符号,而仅引用复合表达式。这是避免破坏现有代码的折衷方案。
width.cutoff
是行长度的下限:继续解析行,直到至少输出 width.cutoff
字节,例如arg = value
表达式不会跨行拆分。
deparse1()
是一个简单的实用程序添加R4.0.0 确保字符串结果(character
长度为一的向量,通常用于名称构造,如deparse1(substitute(.))
.
注意
为了避免源属性与实际函数定义不同步的风险,函数的源属性永远不会被解析为属性。
解析内部结构可能不准确:例如recordPlot
记录的图形显示列表不打算被解析,并且.Internal
调用将显示为原始调用。
例子
require(stats); require(graphics)
deparse(args(lm))
deparse(args(lm), width.cutoff = 500)
myplot <- function(x, y) {
plot(x, y, xlab = deparse1(substitute(x)),
ylab = deparse1(substitute(y)))
}
e <- quote(`foo bar`)
deparse(e)
deparse(e, backtick = TRUE)
e <- quote(`foo bar`+1)
deparse(e)
deparse(e, control = "all") # wraps it w/ quote( . )
参考
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.
也可以看看
.deparseOpts
用于可用的 control
设置; dput()
和 dump()
用于使用相同内部解析函数的相关函数。
Quotes
用于引用约定,包括反引号。
相关用法
- R deparseOpts 表达式解析选项
- R debug 调试函数
- R delayedAssign 延迟评估和承诺
- R det 计算矩阵的行列式
- R detach 从搜索路径中分离对象
- R dump R 对象的文本表示
- R diag 矩阵对角线
- R dots ...、..1 等在函数中使用
- R do.call 执行函数调用
- R dcf 以 DCF 格式读写数据
- R data.class 对象类
- R dimnames 对象的暗名称
- R dyn.load 对外函数接口
- R diff 滞后差异
- R dput 将对象写入文件或重新创建它
- R duplicated 确定重复元素
- R dim 物体的尺寸
- R dontCheck 抑制检查的身份函数
- R drop 删除冗余盘区信息
- R difftime 时间间隔/差异
- R data.frame DataFrame
- R double 双精度向量
- R data.matrix 将 DataFrame 转换为数字矩阵
- R date 系统日期和时间
- R droplevels 删除因子中未使用的级别
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Expression Deparsing。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。