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


R BasicClasses 基本数据类型对应的类


R语言 BasicClasses 位于 methods 包(package)。

说明

形式类与基本 R 对象类型相对应,允许这些类型在方法签名中使用,作为类定义中的槽,并由新类扩展。

用法

### The following are all basic vector classes.
### They can appear as class names in method signatures,
### in calls to as(), is(), and new().
"character"
"complex"
"double"
"expression"
"integer"
"list"
"logical"
"numeric"
"single"
"raw"

### the class
"vector"
### is a virtual class, extended by all the above

### the class
"S4"
### is an object type for S4 objects that do not extend
### any of the basic vector classes.  It is a virtual class.

### The following are additional basic classes
"NULL"     #  NULL objects
"function" #  function objects, including primitives
"externalptr" # raw external pointers for use in C code

"ANY"  # virtual classes used by the methods package itself
"VIRTUAL"
"missing"

"namedList" # the alternative to "list" that preserves
            # the names attribute

类中的对象

如果类不是虚拟的(请参阅 Classes_Details 中的部分),则可以通过调用 new(Class, ...) 形式来创建对象,其中 Class 是带引号的类名,其余参数(如果有)是要解释为的对象此类的向量。多个参数将被连接起来。

"expression" 有点奇怪,因为...参数不会被评估;因此,不要将它们包含在对 quote() 的调用中。

请注意,"list" 类是纯向量。尽管带有名称的列表可以追溯到 S 的最早版本,但它们是向量概念的扩展,因为它们具有属性(现在可以是槽)并且可以是 NULL 或相同长度的字符向量作为向量。如果要保证保留列表名称,请使用类 "namedList" ,而不是 "list" 。此类中的对象必须具有与 "character" 类型的插槽 "names" 相对应的名称属性。在内部,R 特别对待列表的名称,这使得类 "namedList" 中的相应槽成为字符名称和 NULL 的并集是不切实际的。

类别和类型

基本类包括基本 R 类型的类。请注意,这些类型的对象通常不会是 S4 对象( isS4 将返回 FALSE ),尽管包含基本类的类中的对象将是 S4 对象,但类型仍然相同。 typeof 返回的类型有时与类不同,这或者只是由于术语的选择(例如类型 "symbol" 和类 "name" ),或者是因为类之间不存在一对一的对应关系和类型(例如,从类 "language" 继承的大多数类都具有类型 "language" )。

扩展

向量类直接扩展"vector"

方法

强制

定义方法以通过调用相应的基本函数将任意对象强制到向量类,例如 as(x, "numeric") 调用 as.numeric(x)

相关用法


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