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 as 强制对象属于某个类
- R language-class 表示未评估语言对象的类
- R className 类名包含对应的包
- R callGeneric 从方法调用当前通用函数
- R findClass 查找类定义
- R setOldClass 注册旧式 (S3) 类和继承
- R ReferenceClasses 具有按引用处理的字段的对象(OOP 样式)
- R MethodsList 方法列表对象
- R setGroupGeneric 创建函数的组通用版本
- R StructureClasses 基本结构对应的类
- R showMethods 显示指定函数或类的所有方法
- R getMethod 获取或测试方法的定义
- R slot 正式类对象中的槽
- R S4groupGeneric S4组通用函数
- R methodUtilities 用于方法和 S-Plus 兼容性的实用函数
- R getClass 获取类定义
- R evalSource 使用源文件中的函数定义,无需重新安装包
- R is 对象是来自类吗?
- R isSealedMethod 检查密封方法或类
- R cbind2 按列或行组合两个对象
- R GenericFunctions 管理通用函数的工具
- R dotsMethods 在方法签名中使用...
- R S3Part 包含 S3 类的 S4 类
- R nonStructure-class 基本类型的非结构 S4 类
- R selectSuperClasses 类的超类(特定类型)
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Classes Corresponding to Basic Data Types。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。