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


R isS4 测试 S4 对象


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

说明

测试对象是否是 S4 类的实例。

用法

isS4(object)

asS4(object, flag = TRUE, complete = TRUE)
asS3(object, flag = TRUE, complete = TRUE)

参数

object

任何 R 对象。

flag

可选的,逻辑的:指示转换的方向。

complete

可选,逻辑:是否完成到S3的转换。通常不需要,但请参阅详细信息部分。

细节

请注意,isS4 不依赖于methods 包,因此它特别可用于检测是否需要require 该包。

asS3 使用complete 的值来控制是否尝试将object 转换为隐含S3 类的有效对象。如果 completeTRUE ,则扩展 S3 类的 S4 类的对象将转换为具有相应 S3 类的 S3 对象(请参阅 S3Part )。这包括扩展伪类 arraymatrix 的类:此类对象的类属性将设置为 NULL

isS4primitive

isS4 始终根据标记 S4 对象的内部标志是否已为此对象打开而返回 TRUEFALSE

asS4asS3 将打开或关闭此标志,asS3 将从对象 .S3Class 槽(如果存在)设置类。请注意,除非进行有效的转换,否则 asS3 不会将对象转换为 S3 对象;也就是说,除 "S4" 之外的类型的对象(S4 对象是其扩展),除非参数 completeFALSE

例子


isS4(pi) # FALSE
isS4(getClass("MethodDefinition")) # TRUE

也可以看看

is.object 用于更一般的测试; Introduction有关S4的一般信息; Classes_Details 了解有关 S4 类定义的更多信息。

相关用法


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