当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


R name 名称和符号


R语言 name 位于 base 包(package)。

说明

‘name’(也称为‘symbol’)是一种引用方式R按名称(而不是绑定到该名称的对象的值(如果有))。

as.nameas.symbol 相同:它们尝试将参数强制为名称。

is.symbol 和相同的 is.name 返回 TRUEFALSE,具体取决于参数是否是名称。

用法

as.symbol(x)
is.symbol(x)

as.name(x)
is.name(x)

参数

x

对象被强制或测试。

细节

名称限制为 10,000 字节(在以下版本中为 256 字节)R2.13.0 之前)。

as.name 首先将其参数内部强制转换为字符向量(因此不使用 as.character 的方法)。然后,它获取第一个元素,如果它不是 "" ,则返回该名称的符号(如果该元素是 NA_character_ ,则名称为 `NA` )。

as.name 实现为 as.vector(x, "symbol") ,因此将为通用函数 as.vector 调度方法。

is.nameis.symbolprimitive 函数。

为了as.nameas.symbol, 一个R类型的对象"symbol"(参考typeof)。

对于 is.nameis.symbol ,长度为 1 的逻辑向量,其值为 TRUEFALSE

注意

术语 ‘symbol’ 来自 LISP 背景R,而 ‘name’ 已成为标准 S 术语。

例子

an <- as.name("arrg")
is.name(an) # TRUE
mode(an)   # name
typeof(an) # symbol

参考

Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988) The New S Language. Wadsworth & Brooks/Cole.

也可以看看

callis.language。对于内部对象模式,typeof

plotmath 用于 ‘symbol’ 的另一种用途。

相关用法


注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Names and Symbols。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。